Pagini recente » Cod sursa (job #1994372) | Cod sursa (job #2093252) | Cod sursa (job #84945) | Cod sursa (job #1503845) | Cod sursa (job #1253569)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream fin("koba.in");
ofstream fout("koba.out");
int n, m, i, j, k, ok, x1, x2, x3;
int J1, j2, j3, sum, jc, nr;
int main(){
fin >> n >> x1 >> x2 >> x3;
x1 %= 10;
x2 %= 10;
x3 %= 10;
if(n == 1){
fout << x1;
return 0;
}
if(n == 2){
fout << (x1 + x2) % 10;
return 0;
}
if(n == 3){
fout << (x1 + x2 + x3) % 10;
return 0;
}//
J1 = x2;
j2 = x3;
j3 = (x3 + x2 * x1) % 10;
sum = x1 + x2 + x3 + j3;
i = 5;
while(i <= n && (J1 != x1 || j2 != x2 || j3 != x3)){
jc = (j3 + j2 * J1) % 10;
J1 = j2;
j2 = j3;
j3 = jc;
sum += jc;
nr ++;
i ++;
}
if(i > n)//cand a atins n;
fout << sum;
else{
i -= 4;
sum *= n / i;
n %= i;
i = 4;
if(n == 0){
fout << sum;
return 0;
}
if(n == 1){
fout << sum + x1 % 10;
return 0;
}
if(n == 2){
fout << sum + (x1 + x2) % 10;
return 0;
}
if(n == 3){
fout << sum + (x1 + x2 + x3) % 10;
return 0;
}
J1 = x2;
j2 = x3;
j3 = (x3 + x2 * x1) % 10;
sum = sum + x1 + x2 + x3 + j3 % 10;
i = 5;
while(i <= n && (J1 != x1 || j2 != x2 || j3 != x3)){
jc = (j3 + j2 * J1) % 10;
J1 = j2;
j2 = j3;
j3 = jc;
sum += jc;
nr ++;
i ++;
}
fout << sum;
}
return 0;
}