Fedya studies in a gymnasium. Fedya's maths hometask is to calculate the following expression:
for given value of n. Fedya managed to complete the task. Can you? Note that given number n can be extremely large (e.g. it can exceed any integer type of your programming language).
The single line contains a single integer n (0 ≤ n ≤ 10105). The number doesn't contain any leading zeroes.
Print the value of the expression without leading zeros.
4
4
124356983594583453458888889
0
Operation x mod y means taking remainder after division x by y.
Note to the first sample:
数学问题,题意很简单;其实代码也很简单
我最开始做的时候真的吧n的多少次方算出来了。由于之前整理过这样的模板。感觉很爽,但是中途wa了。但发现了这个数只要是4的倍数时,答案就是4,否则就是0;
没有证明,可以简单的大表,观察就可以得出结果。这样代码就简单了
#include<iostream>
#include<fstream>
#include<iomanip>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cstdlib>
#include<cmath>
#include<set>
#include<map>
#include<queue>
#include<stack>
#include<string>
#include<vector>
#include<sstream>
#include<cassert>
using namespace std;
#ifdef __int64
typedef __int64 LL;
#else
typedef long long LL;
#endif
#define nnum 1000005
#define nmax 31625
int main() {
int a, c;
char ch[nnum];
while (~scanf("%s",ch)) {
int len=strlen(ch);
int a=ch[len-1]-'0';
int b=ch[len-2]-'0';
int sum=a+b*10;
if(sum%4==0){
cout<<"4"<<endl;
}
else
cout<<"0"<<endl;
}
return 0;
}