Pagini recente » Cod sursa (job #2749514) | Cod sursa (job #3169991) | Cod sursa (job #101680) | Cod sursa (job #361350) | Cod sursa (job #943238)
Cod sursa(job #943238)
#include <fstream>
using namespace std;
ifstream fin("koba.in"); ofstream fout("koba.out");
int t1, t2, t3, t4, n, s, p, no, pd, sd, nrp, v[1005], poz[1005], sum[1005];
int main()
{
fin >> n >> t1 >> t2 >> t3;
t1 %= 10;
t2 %= 10;
t3 %= 10;
s = t1 + t2 + t3;
p = t1 * 100 + t2 * 10 + t3;
v[p] = 1;
sum[p] = s;
poz[p] = 3;
for(int i = 4; i <= n; ++i)
{
t4 = (t3 + t1 * t2) % 10;
t1 = t2;
t2 = t3;
t3 = t4;
s += t3;
p = t1 * 100 + t2 * 10 + t3;
if(no == 1)
continue;
if(v[p]==0)
{
v[p] = 1;
sum[p] = s;
poz[p] = i;
}
else
{
sd = s - sum[p];
pd = i - poz[p];
nrp = (n - i) / pd;
s += nrp *sd;
i += nrp * pd;
no = 1;
}
}
fout << s << '\n';
fin.close(); fout.close();
return 0;
}