Cod sursa(job #340238)

Utilizator prdianaProdan Diana prdiana Data 13 august 2009 19:36:24
Problema Cifra Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.02 kb
#include <stdio.h>

int ultimacifra[100];

int nc(int nr)
{
	int i;
	int aux = 1;
	for (i=0;i<nr;i++)
	{
		aux*=nr;
		aux %= 10;
	}
	return aux;
}

void calcul()
{
	int i;
	ultimacifra[1] = 1;
	for (i=2;i<=99;i++)
	{
		ultimacifra[i] = (ultimacifra[i-1] + nc(i)) %10;
	}
}

int main()
{
	freopen("cifra.in","r",stdin);
	freopen("cifra.out","w",stdout);
	
	int n,i,in;
	char c1,c2,c;
	scanf("%d\n",&n);
	calcul();
	for (i=0;i<n-1;i++)
	{
		c = 'a';
		c1 = 'a';
		c2 = 'a';
		while (c!='\n')
		{
			scanf("%c",&c);
			if (c!='\n')
			{
				c1 = c2;
				c2 = c;
			}
		}
		if (c1 == 'a')
		{
			printf("%d\n",ultimacifra[c2-'0']);
		}
		else
		{
			printf("%d\n",ultimacifra[(c1-'0')*10+c2 - '0']);
		}
	}
	c = 'a';
	c1 = 'a';
	c2 = 'a';
	while (!feof(stdin))
	{
		scanf("%c",&c);
		if (!feof(stdin))
		{
			c1 = c2;
			c2 = c;
		}
	}
	if (c1 == 'a')
	{
		printf("%d\n",ultimacifra[c2-'0']);
	}
	else
	{
		printf("%d\n",ultimacifra[(c1-'0')*10+c2 - '0']);
	}
	return 0;
}