1. 程式人生 > >hdu 1215 七夕節

hdu 1215 七夕節

spa output alt 表輸入 system.in 七夕節 數字 們的 ring

題意:求因子之和。

註意:1的因子之和是1。

數字N的因子就是全部比N小又能被N整除的全部正整數,如12的因子有1,2,3,4,6。


import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int t = sc.nextInt();
		while (t-- > 0) {
			int n = sc.nextInt();
			// 暴力計算
			int sum = 1;
			for (int i = 2; i * i <= n; i++) {
				if (n % i == 0) {
					// 假設相等就僅僅算一個
					if (i == n / i) {
						sum += i;
					} else {
						sum += (i + n / i);
					}
				}
			}
			System.out.println(sum);
		}
	}

}



七夕節

Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 35021 Accepted Submission(s): 10965


Problem Description 七夕節那天,月老來到數字王國,他在城門上貼了一張告示,而且和數字王國的人們說:"你們想知道你們的還有一半是誰嗎?

那就依照告示上的方法去找吧!"
人們紛紛來到告示前,都想知道誰才是自己的還有一半.告演示樣例如以下:

技術分享


數字N的因子就是全部比N小又能被N整除的全部正整數,如12的因子有1,2,3,4,6.
你想知道你的還有一半嗎?



Input 輸入數據的第一行是一個數字T(1<=T<=500000),它表明測試數據的組數.然後是T組測試數據,每組測試數據僅僅有一個數字N(1<=N<=500000).

Output 對於每組測試數據,請輸出一個代表輸入數據N的還有一半的編號.

Sample Input
3
2
10
20

Sample Output
1
8
22

Author Ignatius.L

hdu 1215 七夕節