HDOJ 1215 七夕节

简介: HDOJ 1215 七夕节

Problem Description

七夕节那天,月老来到数字王国,他在城门上贴了一张告示,并且和数字王国的人们说:”你们想知道你们的另一半是谁吗?那就按照告示上的方法去找吧!”

人们纷纷来到告示前,都想知道谁才是自己的另一半.告示如下:


image.png


数字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

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=0;
            int m=n;
            for(int i=2;i<m;i++){
                if(n%i==0){
                    sum+=i;
                    if(i!=n/i)
                    {
                        sum+=n/i;
                        m=n/i;
                    }
                }
            }
            sum++;
            System.out.println(sum);
        }
    }
}
目录
相关文章
hdoj 1166 敌兵布阵
暴力超时,这道题可以用线段树做,因为更新的是单个节点,我们也可以用数组数组来做,我将两种方法的代码都给出 数组数组最适宜的用途就是区间求和和点的更新,但树状数组并不适用于区间的更新问题,也不是做不到,比较麻烦且难理解,有兴趣的可以看看这个
32 0
hdoj 1230 火星A+B
if(i == 1 && j == 1 && !a[0] && !b[0])
36 0
HDOJ 2044 一只小蜜蜂...
HDOJ 2044 一只小蜜蜂...
133 0
HDOJ 2044 一只小蜜蜂...
HDOJ 2018 母牛的故事
HDOJ 2018 母牛的故事
106 0
HDOJ 2048 神、上帝以及老天爷
HDOJ 2048 神、上帝以及老天爷
118 0
HDOJ 2094 产生冠军
HDOJ 2094 产生冠军
103 0
HDOJ(HDU) 2500 做一个正气的杭电人(水~)
HDOJ(HDU) 2500 做一个正气的杭电人(水~)
117 0
HDOJ 1302(UVa 573) The Snail(蜗牛爬井)
HDOJ 1302(UVa 573) The Snail(蜗牛爬井)
137 0
HDOJ(HDU) 1587 Flowers(水、、)
HDOJ(HDU) 1587 Flowers(水、、)
107 0
HDOJ 2045 不容易系列之(3)—— LELE的RPG难题
HDOJ 2045 不容易系列之(3)—— LELE的RPG难题
174 0