Pagini recente » Cod sursa (job #140202) | Cod sursa (job #1814156) | Cod sursa (job #2881877) | Cod sursa (job #2664798) | Cod sursa (job #2624383)
#include <bits/stdc++.h>
using namespace std;
ifstream in("koba.in");
ofstream out("koba.out");
int v[1000005], fr[1005];
int main()
{
int n, a, b, c;
in >> n >> a >> b >> c;
a %= 10, b %= 10, c %= 10;
v[1] = a;
v[2] = v[1] + b;
v[3] = v[2] + c;
fr[a * 100 + b * 10 + c] = 1;
int p1 = 0, p = 0;
for(int i = 4; i <= n; i ++)
{
int z = (c + a * b) % 10;
a = b;
b = c;
c = z;
v[i] = v[i - 1] + c;
if(fr[a * 100 + b * 10 + c] != 0)
{
p1 = fr[a * 100 + b * 10 + c];
p = i - 3;
break;
}
else
fr[a * 100 + b * 10 + c] = i - 2;
}
int x = p - p1 + 1;
out << (v[p] - v[p1 - 1]) * ((n - p) / x) + v[p1 + (n - p) % x - 1] - v[p1 - 1] + v[p];
return 0;
}