Fedya studies in a gymnasium. Fedya's maths hometask is to calculate the following expression:
(1n + 2n + 3n + 4n) mod 5
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).
Input
The single line contains a single integer n (0 ≤ n ≤ 10^(10^5)). The number doesn't contain any leading zeroes.
Output
Print the value of the expression without leading zeros.
Sample 1
| Inputcopy | Outputcopy |
|---|---|
4 | 4 |
Sample 2
| Inputcopy | Outputcopy |
|---|---|
124356983594583453458888889 | 0 |
Note
Operation x mod y means taking remainder after division x by y.
Note to the first sample:
思路一开始毫无思路,准备打表试一下,发现整除4的数结果都是4,其余的数都是0,但题目的数特别大,longlong都存不下,其实用string存就可以了,然后判断最后两位是否整除4即可,最后特判一下0、4、8。
代码#include#include using namespace std; string s; int main() { cin >> s; int t = s.length(); if (t == 1) { if ((s[0] - '0') % 4 == 0) { cout << 4; } else { cout << 0; } } else { if ((s[t - 1] - '0' + (s[t - 2] - '0') * 10) % 4 == 0) { cout << 4; } else { cout << 0; } } return 0; }



