Cod sursa(job #1737141)

Utilizator denniscrevusDennis Curti denniscrevus Data 3 august 2016 14:06:52
Problema Cifra Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.91 kb
#include <fstream>
#include <cstring>
#define NMAX 105

using namespace std;

int v[NMAX],i,n,ans[NMAX],t,x,s,val;
char c[NMAX],pass[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()
{
    ifstream f("cifra.in");
    ofstream g("cifra.out");

    f>>t;
    f.getline(pass,NMAX);
    precalc();
    for(x=1;x<=t;x++)
    {

        f.getline(c,NMAX);

        n=strlen(c);

        if(c[n-1]=='\n')
            n--;

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

        g<<ans[val]%10<<"\n";
    }

    return 0;
}