Cod sursa(job #1392500)

Utilizator ErikHEErik Henning ErikHE Data 18 martie 2015 18:04:31
Problema Pascal Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.03 kb
#include <iostream>
#include <fstream>
#include <stdlib.h>
using namespace std;

ifstream f("tabela.in");
ofstream g("tabela.out");

long putere(long n, long d)    {
long p=0;

while (n%d==0)  {
    p++;
    n/=d;
}

return p;
}

int main()
{
    long i, j, n, r, d;
    f>>r>>d;
    long m, nr=0;

    /*if (d==2 || d==3 || d==5)   {
        m=putere(r, d);
        for (i=1;i<=r/2;i++)
            if (m-putere(r-i, d)-putere(i,d)!=0)
                nr++;
    }
    else if (d==4)  {
        m=putere(r,2)/2;
        for (i=1;i<=r/2;i++)
            if (m-putere(r-i, d)/2-putere(i,d)/2!=0)
                nr++;
    }
else {
        m=putere(r, 3);
        for (i=1;i<=r/2;i++)
            if (m-putere(r-i, 3)-putere(i,3)!=0)
                nr++;
}*/
    m=putere(r, d);
    if (m!=0)
        nr++;
    for (i=2;i<=r/2;i++)    {
        m=m + putere(r-i, d)- putere(i, d);
        if (m!=0)
            nr++;
    }
    if (r%2==0)
        g<<2*nr-1;
    else
        g<<2*nr;
    return 0;
}