Cod sursa(job #2734930)

Utilizator PredescuSebastianIonPredescu Sebastian Ion PredescuSebastianIon Data 1 aprilie 2021 17:24:55
Problema Sarpe Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.94 kb
#include <fstream>
#include <cstring>

using namespace std;
ifstream f("sarpe.in");
ofstream g("sarpe.out");
const int nmax=1100;
int n,v[nmax*2];
char s[nmax];
int main()
{
    f.getline(s+1,nmax);
    n=strlen(s+1);
    if(n==1 && s[1]=='1')
    {
        g<<"2"<<'\n';
        return 0;
    }
    for(int i=1,j=n;i<j;i++,j--)
    {
        swap(s[i],s[j]);
    }
    for(int i=1;i<=n;i++)
    {
        for(int j=1;j<=n;j++)
        {
            v[i+j-1]+=2*(s[i]-'0')*(s[j]-'0');
        }
    }
    for(int i=1;i<=n;i++)
    {
        v[i]-=2*(s[i]-'0');
    }
    v[1]+=4;
    for(int i=1;i<=2*n;i++)
    {
        while(v[i]<0)
        {
            v[i]+=10;
            v[i+1]--;
        }
        if(v[i]>9)
        {
            v[i+1]+=v[i]/10;
            v[i]%=10;
        }
    }
    int i=2100;
    for(i=2100;v[i]==0;i--);
    for(int j=i;j>=1;j--)
    {
        g<<v[j];
    }
    return 0;
}