Cod sursa(job #285853)

Utilizator Sorin_IonutBYSorynyos Sorin_Ionut Data 23 martie 2009 07:11:04
Problema Cifra Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.78 kb
#include <stdio.h>

#define IN "cifra.in"
#define OUT "cifra.out"
#define max 128

FILE *fin=fopen(IN,"r");
FILE *fout=fopen(OUT,"w");

int m[max];
int n,t;

void preprocesare();
inline int calcul(int);
inline int ultcifra(int,int);

int main()
{
 preprocesare();

 fscanf(fin,"%d",&t);
 while(t)
 {
  --t;
  fscanf(fin,"%d",&n);
  fprintf(fout,"%d\n",calcul(n));
 }
 fclose(fin);
 fclose(fout);

 return 0;
 }

 inline int calcul(int val)
 {
  int r=val%100;
  int c=val/100;
  return (m[r]+c*m[100])%10;
 }

 void preprocesare()
 {
  int i;

  m[1]=1;

  for(i=1;i<=100;i++)
   m[i]=m[i-1]+ultcifra(i%10,i%4);
 }

 inline int ultcifra(int val,int p)
 {
  int i,r=1;

  if(p==0)
   p=4;

  for(i=1;i<=p;i++)
   r*=val;

  return r%10;
 }