Cod sursa(job #1041737)

Utilizator lorundlorund lorund Data 26 noiembrie 2013 01:23:55
Problema Cifra Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.77 kb
#include <cstdio>
#include <cstring>

int v[1001];

int read();
int last();

int main()
{
    int T;

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

    scanf("%d", &T);
    last();
    for (int t=0; t<T; ++t){
        printf("%d\n", v[read()]);
    }

    return 0;
}


int read(){
    char N[105], *p;
    int n;

    scanf("%s", N);
    p = N+strlen(N)-1;

    for (int i=1; i<3 && p>N; ++i){
        --p;
    }
    sscanf(p,"%d", &n);

    return n;
}

int last(){
    int u=0;

    for (int i=1; i<=999; ++i){
        int d=i%10, p=(i-1)%4+1;
        int a=1;

        for (int j=1; j<=p; ++j){
            a*=d;
        }
        u+=a%10;
        u%=10;
        v[i]=u;
    }
    return u;
}