题意:输入整数n,表示一段连续的1,2,3,…,n的数组,你的任务是将这n个数分为两个A,B集合,要求使|sum(A)-sum(B)|最小。
分析:
只要算出1~n的总和sum,若sum为奇数,则答案为1,否则,答案为0。
直接上代码吧:
#include<cstdio>
using namespace std;
int main()
{
long long n,sum;//while(1){
scanf("%lld",&n);
sum=n*(n+1)/2;
if(sum%2==0) printf("0\n");
else printf("1\n");//}
return 0;
}