Cod sursa(job #1284737)

Utilizator tudorcomanTudor Coman tudorcoman Data 6 decembrie 2014 19:34:58
Problema Cifra Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.77 kb
#include<cstdio>
#include<cstring>
using namespace std;
int rest100(char a[200])
{
    int x=0, n=strlen(a);
    for(int i=0;i<n;++i)
    {
        x=x*10+(a[i]-48);
        x%=100;
    }
    return x;
}

int u(int n)
{
    int c=n%10, nr=n%4, p=1;
    if(nr==0)
        nr=4;
    if(c==0 || c ==1 || c==5 || c==6)
        return c;
    while(nr>0)
    {
        p=(p*c)%10;
        --nr;
    }
    return p;
}

int v[100];

int main()
{
    freopen("cifra.in","r",stdin);
    freopen("cifra.out","w",stdout);
    int t;
    char n[200];
    v[0]=0;
    for(int i=1;i<=99;i++)
       v[i]=(v[i-1]+u(i))%10;

    scanf("%d\n",&t);
    for(int i=1;i<=t;i++)
    {
        gets(n);
        printf("%d\n",v[rest100(n)]);
    }
    return 0;
}