Cod sursa(job #1418617)

Utilizator ArkinyStoica Alex Arkiny Data 13 aprilie 2015 15:29:20
Problema Cifra Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include<fstream>
#include<iostream>
#include<string.h>
using namespace std;


char v[1001];
int q[101],t;
long long pow(long long x,long long y)
{
	long long pr=1;
	while(y!=1)
	{
		if(y%2==0)
			x=(x*x)%10,y=y/2;
		else 
			pr=(pr*x)%10,y--;
	}
	return  (x*pr)%10;
}

int main()
{

	ifstream in("cifra.in");
	ofstream out("cifra.out");
	int s=0;
	for(long long i=1;i<=99;i++)
	{
		s=(s+pow(i,i)%10)%10;
		q[i]=s;
	}
	in>>t;
	for(int i=1;i<=t;i++)
	{
		in>>v;
		cout<<v<<" "; 
		int l=strlen(v);
		int u_c=0;
		if(l>1)
		 u_c=(v[l-2]-'0')*10 +(v[l-1]-'0');
		else
		 u_c=v[l-1]-'0';

		out<<q[u_c%100]<<'\n';
	}
	return 0;
}