Cod sursa(job #776840)

Utilizator dobrebogdanDobre Bogdan Mihai dobrebogdan Data 10 august 2012 15:23:54
Problema Cifra Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
#include<stdio.h>
#include<math.h>
#include<string.h>
char a[200];
int main()
{
	freopen("cifra.in","r",stdin);
	freopen("cifra.out","w",stdout);
	int t,i,n,a1,a2,j,z,s;
	scanf("%d",&t);
	gets(a);
	for(i=1;i<=t;i++)
	{
		s=0;
		gets(a);
		n=strlen(a);
		if(n>=2)
		{
		do
		{
		a1=a[n-1];
		a2=a[n-2];
		j=(a2-48)*10+a1-48;
		j=j%4;
		if(j==0)
			j=4;
		z=pow((a[n-1]-48),j);
		s=s+z%10;
		s=s%10;
		a[n-1]--;
		if(a[n-1]==47)
		{
			a[n-1]='9';
			a[n-2]--;
		}
		if(a[n-2]==47)
			break;
		}while(1);
		}
		else
			if(n==1)
			do
			{
				s=s+pow(a[0]-48,a[0]-48);
				a[0]--;
				s=s%10;
			}while(a[0]>=47);
			printf("%d\n",s);
	}
	return 0;
}