Cod sursa(job #854790)

Utilizator whoiscrisCristian Plop whoiscris Data 14 ianuarie 2013 01:58:18
Problema Cifra Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.37 kb
#include <iostream>
#include <fstream>
#include <string.h>
#include <stdio.h>

using namespace std;

ifstream fin("cifra.in");
ofstream fout("cifra.out");

int t;
char nr[101];
int val[101],verif[101];
int i,j;
int sum,cifra,rez,rest,uc,pc;

int main()
{


    for(i=1;i<=100;i++){
        rez = 0;
        cifra = i%10;

        if(cifra == 1 || cifra == 5 || cifra == 6)
            rez = cifra;
        if(cifra == 2 || cifra == 3 || cifra == 7 || cifra == 8){
            rest = i%4;
            if(rest == 1)
                rez = cifra;
            else if(rest == 2)
                rez = cifra*cifra;
            else if(rest == 3)
                rez = cifra*cifra*cifra;
            else
                rez = cifra*cifra*cifra*cifra;
        }
        if(cifra == 4 || cifra == 9){
            rest = i%2;
            if( rest == 1)
                rez = cifra;
            else if(rest == 2)
                rez = cifra*cifra;
            else if(rest == 0)
                rez = cifra*cifra;
        }
        rez = rez%10;
        val[i] = val[i-1] + rez;
        val[i]%= 10;
    }

int l;
fin>>t;
    for(i=1;i<=t;i++){
        fin>>nr;
        l = strlen(nr);
        uc = nr[strlen(nr)-1]-'0';
        if(l>=2){
            pc = nr[strlen(nr)-2]-'0';
            fout<<val[pc*10+uc]%10<<"\n";
        }
        else
            fout<<val[uc]%10<<"\n";
    }
    return 0;
}