Cod sursa(job #389100)

Utilizator ghitzZzaGheorghita Hurmuz ghitzZza Data 31 ianuarie 2010 21:27:32
Problema Cifra Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.19 kb
#include <fstream>
#include <cstdio>
#include <cstring>

using namespace std;

int main()
{
    int nrf[100]={1 , 5 , 2 , 8 , 3 , 9 , 2 , 8 , 7 , 7 ,
                8 , 4 , 7 , 3 , 8 , 4 , 1 , 5 , 4 , 4 ,
                5 , 9 , 6 , 2 , 7 , 3 , 6 , 2 , 1 , 1 ,
                2 , 8 , 1 , 7 , 2 , 8 , 5 , 9 , 8 , 8 ,
                9 , 3 , 0 , 6 , 1 , 7 , 0 , 6 , 5 , 5 ,
                6 , 2 , 5 , 1 , 6 , 2 , 9 , 3 , 2 , 2 ,
                3 , 7 , 4 , 0 , 5 , 1 , 4 , 0 , 9 , 9 ,
                0 , 6 , 9 , 5 , 0 , 6 , 3 , 7 , 6 , 6 ,
                7 , 1 , 8 , 4 , 9 , 5 , 8 , 4 , 3 , 3 ,
                4 , 0 , 3 , 9 , 4 , 0 , 7 , 1 , 0 , 0 };
    ifstream f("cifra.in");
    ofstream g("cifra.out");
    int i,t,nr,nr2[3];
    char temp;
    f>>t;
    for(i=0;i<=t;i++)
    {
        temp='\0';
        nr2[0]=0;
        nr2[1]=0;
        nr2[2]=0;
        f.get(temp);
        while(temp!=10 && !f.eof())
        {
            nr2[0]=nr2[1];
            nr2[1]=nr2[2];
            nr2[2]=temp-'0';
            f.get(temp);
        }
        nr=nr2[1]*10+nr2[2];
        if((nr==0)&&(nr2[0]>0)) g<<nrf[99]<<'\n';
        else if(nr>0) g<<nrf[nr-1]<<'\n';
    }
}