Cod sursa(job #173128)

Utilizator andyciupCiupan Andrei andyciup Data 7 aprilie 2008 11:19:08
Problema Cifra Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1 kb
#include<stdio.h>
#include<string.h>
 int cif(int k){  
        if(k%20==0) return 0;  
		if(k%20==1) return 1;  
		if(k%20==2) return 4;  
		if(k%20==3) return 7;  
		if(k%20==4) return 6;  
		if(k%20==5) return 5;  
		if(k%20==6) return 6;  
		if(k%20==7) return 3;  
		if(k%20==8) return 6;  
		if(k%20==9) return 9;  
		if(k%20==10) return 0;  
		if(k%20==11) return 1;  
		if(k%20==12) return 6;  
		if(k%20==13) return 3;  
		if(k%20==14) return 6;  
		if(k%20==15) return 5;  
        if(k%20==16) return 6;  
        if(k%20==17) return 7;  
        if(k%20==18) return 4;  
        if(k%20==19) return 9;
		return 0;
     }  
int main(){
	freopen("cifra.in", "r", stdin);
	freopen("cifra.out", "w", stdout);
	char s[101];
	int ss,n,t, i, p=0, rr,lung;
	scanf("%d\n",&t);
	for(;t;--t){
		gets(s);
		lung=strlen(s);
		if(lung==1)
			n=s[0]-'0';
		else
			n=(s[lung-2]-'0')*10+(s[lung-1]-'0');
		ss=(n/20)*4;
		rr=n%20;
		p=0;
		for(i=1; i<=rr; i++)
			p=p+cif(i);
		p=(p+ss)%10;
		printf("%d\n", p);
	}
	return 0;
}