Cod sursa(job #1012861)

Utilizator SCBbestofSocaciu-Cumpanasu Bogdan SCBbestof Data 19 octombrie 2013 18:45:20
Problema Cifra Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.73 kb
#include<stdio.h>
#include<string.h>
int numar(char *s){
    int x,n=strlen(s);
    x=s[n-1]-'0';
    if(n>1)
        x+=10*(s[n-2]-'0');
    return x;
}
int ultima(int a,int b){
    int i,p=1;
    a%=10;
    b%=4;
    if(b==0)
        b=4;
    for(i=1;i<=b;i++)
        p*=a;
    return p%10;
}
int calcul(int n){
    int i,s=0;
    for(i=1;i<=n;i++)
        s+=ultima(i,i);
    return s%10;
}
int main(){
    int t,n,i,r;
    char s[101];
    FILE *in=fopen("cifra.in","r"),*out=fopen("cifra.out","w");
    fscanf(in,"%d",&t);
    for(i=0;i<t;i++){
        fscanf(in,"%s",s);
        n=numar(s);
        r=calcul(n);
        fprintf(out,"%d\n",r);
    }
    fclose(in);
    fclose(out);
    return 0;
}