Cod sursa(job #1118925)

Utilizator RadEmanuelRad Emanuel RadEmanuel Data 24 februarie 2014 13:51:59
Problema Cifra Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.04 kb
#include<fstream>
#include<cmath>
#include<cstring>
using namespace std;
ifstream fin ("cifra.in");
ofstream fout("cifra.out");
int i,j,v[100],t,sum,u;
char s[5000];

int f(int i)
{
    int u=i%100;
    switch (u%10)
    {
        case 2: if(u%4==2) return 4;
                      else return 6;
        case 3: if(u%4==1) return 3;
                      else return 7;
        case 7: if(u%4==2) return 9;
                      else return 1;
        case 8: if(u%4==2) return 4;
                      else return 6;
        case 4: return 6;
    }
    return u%10;
}

int main()
{
    for(i=1;i<=99;++i)
    {
        sum=0;
        for(j=1;j<=i;++j)
        {
            sum+=f(j);
            sum%=10;
        }
        v[i]=sum%10;
    }
    fin>>t;
    for(i=1;i<=t;++i)
    {
        fin.get();
        fin.get(s,500);
        if(strlen(s)==1)
            u=(int)s[strlen(s)-1]-48;
        else
            u=10*(int)s[strlen(s)-2]+(int)s[strlen(s)-1]-48;
        fout<<v[u]<<'\n';
    }
    return 0;
}