java - Project Euler 5. 如何将元素添加到 ArrayList 中的其他 ArrayList 中素数出现次数最多的 ArrayList

标签 java

import java.util.ArrayList;

public class Five {

    public static void main(String[] args) {

        ArrayList<Integer> list = new ArrayList<Integer>();
        ArrayList<Integer> list1 = new ArrayList<Integer>();
        SupportLibrary sL = new SupportLibrary();

        for ( int i = 1; i <= 20; i ++ ){

            list = sL.primeFactorList(i);
            for ( int x = 0; x < list.size(); x ++ ){
                System.out.print( list.get(x) );
            }
            System.out.println();
        }
    }
}

这是我的代码,这是我的输出

2
3
22
5
23
7
222
33
25
11
223
13
27
35
2222
17
233
19
225

我试图只将 2222 33 5 7 11 13 17 19 添加到 list1,这样我就可以将它们相乘以获得最小的正数,该正数可以被 1 到 20 的所有数字整除。任何想法如何?

最佳答案

对于你在评论中描述的,你可以这样做:

if(list.get(x) == 2222 || list.get(x) <= 20){
   list1.add(x)
}

但是,您似乎已经知道答案,并且正在尝试让您的程序适应它。 Project Euler 的要点是您的程序应该为您得出答案。理想情况下,您的程序将能够找到可被任何范围内的所有数字整除的最小正数。

试着想一想您如何知道 2222 是一个因子。是什么让您特别选择了这个数字,而不是任何其他对 1 到 20 之间的数字进行质因数分解的数字?

关于java - Project Euler 5. 如何将元素添加到 ArrayList 中的其他 ArrayList 中素数出现次数最多的 ArrayList,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30739748/

相关文章:

Java方法重载——歧义

Java If 语句失败返回并要求重试

java - 如何避免自动更改 .CSV 文件中的数据类型

java - 变量的同步集合

Java作业与扫描仪输入的问题

java sql查询从csv文件导入的数据

java - 如何通过javamail访问gmail帐户

java - Neo4j Java 遍历 - 查找传出/传入节点

java - Thread.interrupted() 返回的值不正确 - 为什么?

java - JPA异常: org. hibernate.exception.SQLGrammarException