Cod sursa(job #1969985)
Utilizator | Data | 18 aprilie 2017 19:28:52 | |
---|---|---|---|
Problema | Cifra | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.59 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream fin("cifra.in");
ofstream fout("cifra.out");
int n,i,t,v[105];
char a[105];
int lgput(int n) {
int s=1,p=n;
while (p!=0) {
if(p%2==1)
s=(s*n)%10;
n=(n*n)%10;
p/=2;
}
return s;
}
int main(){
fin>>t;
for(i=1;i<=100;i++)
v[i]=(v[i-1]+lgput(i))%10;
while (t--) {
fin>>a+1;
n=strlen(a+1);
if(n==1)
fout<<v[a[n]-'0']<<"\n";
else
fout<<v[a[n]-'0'+(a[n-1]-'0')*10]<<"\n";
}
return 0;
}