题解 | 矩形游戏

矩形游戏

https://www.nowcoder.com/practice/5b6c2c824a434b55a5e3b77619c54a90

这题其实就是要我们统计每一次除掉的那个因数所对应的更大的那个因数之和

如果n本身就是质数,那么最后只需要加1,而不是加n,因为要保证每次摆下的行数大于1



import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner scanner=new Scanner(System.in);
		long n=scanner.nextLong();
		long t=n;
		long count=t;
		for (int i = 2; i <= Math.sqrt(n); i++) {
			while(t%i==0) {
				t=t/i;
				count+=t;
			}
			if(t==1) {
				break;
			}
		}
		if(t>1) {
			count+=1;
		}
		System.out.println(count);

	}

}

全部评论

相关推荐

政委qqq:这道题在算法竞赛里唯一考的就是高精度,但是只能难住C++这类语言,Python直接a+b秒天秒地
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务