Pagini recente » Cod sursa (job #2172992) | Cod sursa (job #2034885) | Cod sursa (job #1554490) | Profil Melacas | Cod sursa (job #120798)
Cod sursa(job #120798)
#include <stdio.h>
char v[2000005];
void ultci()
{
long long i,j,b;
for (i=1;i<=2000001;i++)
{
b=i%10;
switch (b)
{
case 1:v[i]=v[i-1]+1;break;
case 2:
if (i%4==0) v[i]=(v[i-1]+6)%10;
if (i%4==1) v[i]=(v[i-1]+2)%10;
if (i%4==2) v[i]=(v[i-1]+4)%10;
if (i%4==3) v[i]=(v[i-1]+8)%10;break;
case 3:
if (i%4==0) v[i]=(v[i-1]+1)%10;
if (i%4==1) v[i]=(v[i-1]+3)%10;
if (i%4==2) v[i]=(v[i-1]+9)%10;
if (i%4==3) v[i]=(v[i-1]+7)%10;break;
case 4:
if (i%2==0) v[i]=(v[i-1]+6)%10;
if (i%2==1) v[i]=(v[i-1]+4)%10;break;
case 5: v[i]=(v[i-1]+5)%10;break;
case 6: v[i]=(v[i-1]+6)%10;break;
case 7:
if (i%4==0) v[i]=(v[i-1]+1)%10;
if (i%4==1) v[i]=(v[i-1]+7)%10;
if (i%4==2) v[i]=(v[i-1]+9)%10;
if (i%4==3) v[i]=(v[i-1]+3)%10;break;
case 8:
if (i%4==0) v[i]=(v[i-1]+6)%10;
if (i%4==1) v[i]=(v[i-1]+8)%10;
if (i%4==2) v[i]=(v[i-1]+4)%10;
if (i%4==3) v[i]=(v[i-1]+2)%10;break;
case 9:
if (i%2==0) v[i]=(v[i-1]+1)%10;
if (i%2==1) v[i]=(v[i-1]+9)%10;break;
}
}
}
int main()
{ long long n,i,t;
FILE*f=fopen("cifra.in","r");
FILE*g=fopen("cifra.out","w");
fscanf(f,"%lld",&t);
ultci();
for (i=1;i<=t;i++)
{
fscanf(f,"%lld",&n);
fprintf(g,"%c",v[n]);
}
return 0;
}