import java.util.ArrayList; /** * Created by Administrator on 2015/5/9. */ public class E8 { public static void main(String[] args) { String number=new String("73167176531330624919225119674426574742355349194934"+ "96983520312774506326239578318016984801869478851843"+ "85861560789112949495459501737958331952853208805511"+ "12540698747158523863050715693290963295227443043557"+ "66896648950445244523161731856403098711121722383113"+ "62229893423380308135336276614282806444486645238749"+ "30358907296290491560440772390713810515859307960866"+ "70172427121883998797908792274921901699720888093776"+ "65727333001053367881220235421809751254540594752243"+ "52584907711670556013604839586446706324415722155397"+ "53697817977846174064955149290862569321978468622482"+ "83972241375657056057490261407972968652414535100474"+ "82166370484403199890008895243450658541227588666881"+ "16427171479924442928230863465674813919123162824586"+ "17866458359124566529476545682848912883142607690042"+ "24219022671055626321111109370544217506941658960408"+ "07198403850962455444362981230987879927244284909188"+ "84580156166097919133875499200524063689912560717606"+ "05886116467109405077541002256983155200055935729725"+ "71636269561882670428252483600823257530420752963450"); ArrayList<Integer> arrayList=new ArrayList<Integer>(); long max=0; int length=number.length(); for(int i=0;i<length-13;i++) { long tempmax=1;//注意一定要設置成long,否則會越界,調試了好久,菜鳥 for(int count=i;count<i+13;count++)//每次取13個數 { arrayList.add(Integer.parseInt(number.substring(count,count+1)));//注意每次取值初始角標的變化。 } for(Integer integer:arrayList) { tempmax *=integer; } if(tempmax>max) max=tempmax; arrayList.clear();//注意一定要給arraylist 清零 } System.out.println(max); } }
project Euler problem 8
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.