Cod sursa(job #1637447)

Utilizator adu18sptAndrei Mircea adu18spt Data 7 martie 2016 17:25:10
Problema Cifra Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.63 kb
#include<fstream>
#include<string.h>
using namespace std;
ifstream fin("cifra.in");
ofstream fout("cifra.out");
unsigned long t,n,v[101],i;
char c[101];
unsigned long aux,r=1;

unsigned put(unsigned a)
{
	aux=a;r=1;
	
	while(aux>1)
	{
		if(aux%2==0)
		{
			aux/=2;
			a=(a*a)%10;
		}
		else
		{
			r=(r*a)%10;
			aux--;
		}
	}
	return (a*r)%10;
}
int main()
{
	fin>>t;
	for(i=1;i<=100;i++)
	{
		v[i]=(v[i-1]+put(i))%10;
	}
	for(i=1;i<=t;i++)
	{
		fin>>(c+1);
		n=strlen(c+1);
		if(n==1)
		{
			fout<<v[c[n]-'0']<<"\n";
		}
		else
		{
			fout<<v[c[n]-'0'+(c[n-1]-'0')*10]<<"\n";
		}
	}
	return 0;
}