Cod sursa(job #1755781)

Utilizator silkMarin Dragos silk Data 11 septembrie 2016 01:02:57
Problema Cifra Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.82 kb
#include <cstdio>
#include <cstring>
#define NMax 105

char s[NMax];
int ans[NMax];

void Precalc()
{
    int i,x,s;
    for( i = 1; i <= 99; ++i )
    {
        x = i % 10;

        if( i % 4 == 0 ) s = x*x*x*x;
        else if( i % 4 == 1 ) s = x;
        else if( i % 4 == 2 ) s = x*x;
        else s = x*x*x;

    s = s % 10;
    ans[i] = ( ans[i-1] + s ) % 10 ;
    }
}

int main(){
    freopen("cifra.in","r",stdin);
    freopen("cifra.out","w",stdout);

    int i,T,n,value;

    Precalc();

    scanf("%d\n",&T);

    while(T--)
    {
        fgets(s,NMax,stdin);
        n = strlen(s);
        if( s[n-1] == '\n' ) n--;

        if(n>1) value = ( s[n-2] - '0' ) *10 + s[n-1] - '0' ;
        else value = s[n-1] - '0';

        printf("%d\n",ans[value]);
    }


    return 0;
}