题目链接:http://codeforces.com/contest/456/problem/B
解题报告:输入一个n,让你判断(1n + 2n + 3n + 4n) mod 5的结果是多少?注意n的范围很大很大 n (0 ≤ n ≤ 10105).
只要判断是否能被整除4就可以了,如果n能被4整除,则结果是4,如果不能,则结果是0
但n很长,不能直接mod,但只要判断最低的两位能不能被4整除就可以了,如果n只有一位就判断最低的一位。
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
#include<cmath>
#include<deque>
#include<queue>
#include<set>
#include<map>
using namespace std;
#define maxn 100005
char str[maxn];
int main()
{
while(scanf("%s",str)!=EOF)
{
int temp,len = strlen(str);
if(len <= )
temp = str[] - '';
else temp = * (str[len - ] - '') + (str[len - ] - '');
printf(temp % ? "0\n":"4\n");
}
return ;
}