Gcd
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 524288/524288 K (Java/Others)
Total Submission(s): 821 Accepted Submission(s): 275
Problem Description
wls 有一个整数 n,他想将 1 − n 这 n 个数字分成两组,每一组至少有一个数,并且使得两组数字的和的最大公约数最大,请输出最大的最大公约数。
Input
输入一行一个整数 n。
2 ≤ n ≤ 1, 000, 000, 000
Output
输出一行一个整数表示答案。
Sample Input
6
Sample Output
7
Source
755hdu女生赛
#include <stdio.h>
#define ll long long
int main()
{
ll n,i,sum;
scanf("%lld",&n);
sum=(n*(n+1))/2;//1——n个数求和
for(i=2;i<=sum;i++)
{
if(sum%i==0)
{
printf("%lld\n",sum/i);
break;
}
}
return 0;
}