Pagini recente » Cod sursa (job #1577470) | Cod sursa (job #33561) | Cod sursa (job #68891) | Cod sursa (job #1376317) | Cod sursa (job #1312105)
#include <iostream>
#include <fstream>
using namespace std;
long int v[100000000];
int res(int n)
{
int rez, m, k;
m=n%10;
if(m==1) rez=1;
else
if(m==0) rez=0;
else
if(m==2)
{
k=n%4;
if(k==1) rez=2; else
if(k==2) rez=4; else
if(k==3) rez=8; else
if(k==0) rez=6;
}
else
if(m==3)
{
k=n%4;
if(k==1) rez=3; else
if(k==2) rez=9; else
if(k==3) rez=7; else
if(k==0) rez=1;
}
else
if(m==4)
{
k=n%2;
if(k==1) rez=4; else
if(k==0) rez=6;
}
else
if(m==5) rez=5;
else
if(m==6) rez=6;
else
if(m==7)
{
k=n%4;
if(k==1) rez=7; else
if(k==2) rez=9; else
if(k==3) rez=3; else
if(k==0) rez=1;
}
else
if(m==8)
{
k=n%4;
if(k==1) rez=8; else
if(k==2) rez=4; else
if(k==3) rez=2; else
if(k==0) rez=6;
}
else
if(m==9)
{
k=n%2;
if(k==1) rez=9; else
if(k==0) rez=1;
}
v[n]=rez;
return rez;
}
int main()
{
ifstream in("cifra.in");
ofstream out("cifra.out");
long int n, t, i, j, s;
in>>t;
for(i=1;i<=t;i++)
{
in>>n;
s=0;
for(j=1;j<=n;j++)
{
if(v[j]!=0) s=s+v[j];
else
s=s+res(j);
}
out<<s%10<<"\n";
}
in.close();
out.close();
return 0;
}