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:
一道很水的数学题,依次列出1 2 3 4的次方mod5可以发现如下规律:
那么我们要怎么从字符串中取呢
考虑100是4的整数倍,所以我们只用取字符串最后两位即可,注意只有一位字符的字符串
代码如下:
#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
#define MAXN 100010
#define LL long long
using namespace std;
char str[MAXN];
int main(void) {
int x, y, z;
scanf("%s", str);
int len = strlen(str);
if(len >= 2) {
x = str[len-2]-'0';
y = str[len-1]-'0';
z = 10*x+y;
} else if(len == 1) {
z = str[0]-'0';
}
printf("%d\n", z%4==0 ? 4 : 0);
return 0;
}