Cod sursa(job #3205388)

Utilizator BlaugranasEnal Gemaledin Blaugranas Data 19 februarie 2024 14:42:27
Problema Pascal Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.61 kb
#include<fstream>
using namespace std;
ifstream F("pascal.in");
ofstream G("pascal.out");
int p,q,r,d,s,i,j;
int main()
{
    if(F>>r>>d,d==3||d==5)
		for(i=1;i<=r/2;++i) {
			for(j=r-i+1;j%d==0;++p,j/=d);
			for(j=i;j%d==0;--p,j/=d);
			s+=p>0;
		}
	else if(d==2||d==4)
		for(i=1;i<=r/2;++i) {
			for(j=r-i+1;!(j&1);++p,j>>=1);
			for(j=i;!(j&1);--p,j>>=1);
			s+=d<3?p>0:p>1;
		}
	else if(d==6)
		for(i=1;i<=r/2;++i) {
			for(j=r-i+1;!(j&1);++p,j>>=1);
			for(;j%3==0;++q,j/=3);
			for(j=i;!(j&1);--p,j>>=1);
			for(;j%3==0;--q,j/=3);
			s+=p&&q;
		}
    return r&1?s<<=1:s=(s<<1)-1,G<<s,0;
}