Cod sursa(job #1273834)

Utilizator mikefrog29XXXXXXXX mikefrog29 Data 22 noiembrie 2014 23:00:08
Problema Cifra Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.93 kb
#include <fstream>
#include <string.h>

using namespace std;

ifstream f("cifra.in");
ofstream g("cifra.out");

char ch, s[102];
void citire(short &x)
{f.get(s,101);
short a=strlen(s);
if (a==1)
    x=s[0]-'0';
else
    {x=(s[a-2]-'0')*10 + (s[a-1]-'0');
    }
f.get();
}
int T, i;
short x, v[101];

int main()
{v[0]=0;
for (i=1; i<=99 ; i+=20)
    {v[i]=(v[i-1]+1)%10; v[i+1]=(v[i]+4)%10; v[i+2]=(v[i+1]+7)%10; v[i+3]=(v[i+2]+6)%10; v[i+4]=(v[i+3]+5)%10; v[i+5]=(v[i+4]+6)%10; v[i+6]=(v[i+5]+3)%10; v[i+7]=(v[i+6]+6)%10; v[i+8]=(v[i+7]+9)%10; v[i+9]=v[i+8];
    v[i+10]=(v[i+9]+1)%10; v[i+11]=(v[i+10]+6)%10; v[i+12]=(v[i+11]+3)%10; v[i+13]=(v[i+12]+6)%10; v[i+14]=(v[i+13]+5)%10; v[i+15]=(v[i+14]+6)%10; v[i+16]=(v[i+15]+7)%10; v[i+17]=(v[i+16]+4)%10; v[i+18]=(v[i+17]+9)%10; v[i+19]=v[i+18];
    }
f >> T; f.get();
for (i=1 ; i<= T ; i++)
    {x=0; citire(x); g << v[x] << endl;}
f.close();
g.close();
return 0;
}