欧拉工程第12题

题目链接:https://projecteuler.net/problem=12

package projecteuler11to20;import java.util.Date;class level12{void solve(){long num=1;int index=500;num=Divisor(index);System.out.println("num"+num);}long Divisor(int index){long num=1;int divisornum=2;long trianglenumber=1;while(num!=0){
//      if(trianglenumber==1) return 1;//与求素数类似的,这个只求一半,至于为什么我就不知道的,不然一个一个的遍历浪费很长时间的,根本没法玩的。for(int i=2;i<=Math.sqrt(trianglenumber);i++){if(trianglenumber%i==0){divisornum++;}}divisornum*=2;System.out.println("divisornum="+divisornum+" ");if(divisornum>=index){break;}else {divisornum=2;num++;trianglenumber=num*(num+1)/2;System.out.print(trianglenumber+" "+num);}}return trianglenumber;}
}
public class Problem12 {public static void main(String[] args){Date beginTime=new Date();new level12().solve();//76576500Date endTime=new Date();long time=endTime.getTime()-beginTime.getTime();System.out.println("Time="+time/1000+"秒"+time%1000+"毫秒");}
}


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部