Cod sursa(job #38956)

Utilizator mika17Mihai Alex Ionescu mika17 Data 26 martie 2007 12:03:56
Problema Cifra Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.77 kb
#include <stdio.h>
#include <string.h>
#define DMAX 100
#define LMAX 100
short cif[DMAX];
void proc();
void solve();
int main()
{
 proc();
 solve();
 return 0;
}

void proc()
{
 short pow;
 for(int i = 1 ; i < DMAX ; ++i)
 {
  pow = 1;
  for(int j = 1 ; j <= i ; pow = (pow * i) % 10 , ++j);
  cif[i] = (cif[i - 1] + pow) % 10;
 }
}

void solve()
{
 FILE *f,*g;
 short t,len,ind;
 char n[LMAX+1];
 f = fopen("in.txt","r");
 g = fopen("cifra.out","w");
 fscanf(f,"%hd\n",&t);
 while(t--)
 {
  fscanf(f,"%s",n);
  len = strlen(n);
  if(len>1)
    ind = (n[len-2]-'0') * 10 + (n[len-1] - '0'); //ultimele 2 cifre
   else
    ind = n[0]-'0';                           //ultima cifra
  fprintf(g,"%d\n",cif[ind]%DMAX);
 }
 fclose(f);
 fclose(g);
}