Cod sursa(job #78752)

Utilizator vanila_CPPIonescu Victor Cristian vanila_CPP Data 19 august 2007 15:25:14
Problema Cifra Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.14 kb
#include <stdio.h>
#include <cctype>
int ucf[20],t;


int putere(int x,int y)
{
        int p;
        int i;
        p=1;
        for (i=1;i<=y;i++)
                {
                        p=(p*x) % 10;
                }
        return p;
}


void precalculare(void)
{
        int i;
        ucf[0]=0;
        for (i=1;i<=19;i++)
                ucf[i]=(ucf[i-1]+putere(i,i)) % 10;
}



void iofile(void)
{
        int c;
        freopen("cifra.in","r",stdin);
        freopen("cifra.out","w",stdout);
        scanf("%d",&t);
        c=getchar();
}



void prel(void)
{
        int c;
        int uc,luc,res,lluc;
        uc=luc=lluc=0;
        while (isdigit(c=getchar()))
                {
                       luc=uc;
                       uc=c-'0';
                }

        res=((luc/2)*ucf[19]+ucf[(luc%2)*10+uc]) % 10;
        printf("%d\n",res);
}


int main(void)
{
        int i;
        precalculare();
        iofile();
        for (i=1;i<=t;i++)
                {
                        prel();
                }
        fclose(stdin);
        fclose(stdout);
        return 0;
}