Cod sursa(job #339960)

Utilizator mlazariLazari Mihai mlazari Data 12 august 2009 13:33:29
Problema Cifra Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.84 kb
#include<stdio.h>
#include<string.h>

int z[100]; // z[i] este rezultatul pentru numarul i

int putere(int cifra) {
  int numar=1;
  for(int i=0;i<cifra;i++) {
    numar*=cifra;
    numar%=10; // iau numai ultima cifra, ca sa nu fie prea mare numarul
  }
  return numar;
}

int main() {
  freopen("cifra.in","r",stdin);
  freopen("cifra.out","w",stdout);
  int cifra,d,t,l;
  char c[102];
  for(d=1;d<100;d++) z[d]=(z[d-1]+putere(d))%10; // Calculez rezultatul p/u 0-99
  scanf("%d\n",&t);
  for(d=0;d<t;d++) {
    // Citesc numarul, apoi calculez numarul format din ultimele 2 cifre
    fgets(c,102,stdin);
    l=strlen(c)-1;
    if(l==1) // Numarul are o singura cifra
     cifra=c[0]-'0';
    else // Numarul are mai mult de o cifra
     cifra=(c[l-2]-'0')*10+(c[l-1]-'0');

    printf("%d\n",z[cifra]);
  }
  return 0;
}