Cod sursa(job #339946)

Utilizator mlazariLazari Mihai mlazari Data 12 august 2009 13:13:13
Problema Cifra Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.8 kb
#include<fstream>
#include<string.h>
using namespace std;

int putere(int cifra) {
  long long 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() {
  ofstream fout("cifra.out");
  ifstream fin("cifra.in");
  int cifra,d,t,z,l;
  char c[102];
  fin>>t;
  for(d=0;d<t;d++) {
    // Citesc numarul, apoi calculez numarul format din ultimele 2 cifre
    fin>>c;
    l=strlen(c);
    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'))%20;

    z = 0;
    for(int i = 1; i <= cifra; i++) {
      z+=putere(i);
      z%=10;
    }
    fout<<z<<endl;
  }
  return 0;
}