Cod sursa(job #3218612)
Utilizator | Benjamin Secara Benjamin4321234 | Data | 27 martie 2024 16:02:01 |
---|---|---|---|
Problema | Cifra | Scor | 0 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 1.37 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream fin("cifra.in");
ofstream fout("cifra.out");
int s[1001],n,nr,c;
char k,a,b;
int stiu_sa_fac_subprogram(int x)
{
int r=x%10;
if(r==1 || r==0 || r==5|| r==6)
{
return r;
}
else
{
if(r==4 || r==9)
{
if(x%2==1)
{
return r;
}
else
{
return (r*r)%10;
}
}
else if(r==2 || r==3 || r==7 || r==8)
{
if(x%4==1)
{
return r;
}
else if(x%4==2)
{
return (r*r)%10;
}
else if(x%4==3)
{
return (r*r*r)%10;
}
else
{
return (r*r*r*r)%10;
}
}
}
}
int main()
{
fin>>n;
fin.get();
for(int i=1; i<=101; i++)
{
s[i]=stiu_sa_fac_subprogram(i);
s[i]+=s[i-1];
if(s[i]>=10)
{
s[i]=s[i]%10;
}
}
for(int i=1; i<=n; i++)
{
nr=0;
fin.get(a);
while(a>='0' && a<='9')
{
nr=(nr%10)*10+(a-'0');
fin.get(a);
}
fout<<s[nr%20]<<'\n';
}
return 0;
}