Cod sursa(job #761904)

Utilizator gabrielvGabriel Vanca gabrielv Data 27 iunie 2012 20:22:00
Problema Cifra Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.78 kb
#include <cstdio>
#include <cstring>
#define NMAX 120

using namespace std;

char line[NMAX];
int cifra[10][5],sol[100],T;

void construct()
{
    int i,j;
    for(i=1;i<10;i++)
    {
        cifra[i][1]=i;
        for(j=2;j<5;j++)
            cifra[i][j]=cifra[i][j-1]*i;
    }

    for(i=1;i<=99;i++)
        sol[i]=(sol[i-1]+cifra[i%10][(i-1)%4+1])%10;
}

int main()
{
    freopen("cifra.in","r",stdin);
    freopen("cifra.out","w",stdout);
    construct();
    scanf("%d\n",&T);
    while(T--)
    {
        fgets(line+1,NMAX-3,stdin);
        if(strlen(line+1)>2)
            printf("%d\n",sol[(line[strlen(line+1)-1]-'0')*10+(line[strlen(line+1)-2]-'0')]);
        else
            printf("%d\n",sol[int(line[strlen(line+1)-1]-'0')]);
    }
    return 0;
}