Cod sursa(job #2099848)

Utilizator laurpoppopescu laurentiu laurpop Data 4 ianuarie 2018 18:57:09
Problema Pascal Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.86 kb
#include <fstream>
using namespace std;
ifstream f("pascal.in");
ofstream g("pascal.out");
int i,d,j,nr,v[4],p[4],x[4],k,ok,sol;
int main()
{
    f>>i>>d;
    if(d==2||d==3||d==5){
        nr=1;
        v[nr]=d;
        p[nr]=1;
    }
    else
      if(d==4){
         nr=1;v[nr]=2;p[nr]=2;
      }
      else
         {
             nr=2;v[1]=2;v[2]=3;
             p[1]=p[2]=1;
         }
    for(j=0;j<i/2;j++){


ok=1;
         for(k=1;k<=nr;k++){
            int y=i-j;
            while(y%v[k]==0){
                x[k]++;
                y/=v[k];
            }
            y=j+1;
            while(y%v[k]==0){
                x[k]--;
                y/=v[k];
            }
            if(x[k]<p[k])
                ok=0;
         }
         sol+=2*ok;
    }
    if(i%2==0){

        sol-=ok;
    }
    g<<sol;
    return 0;
}