Cod sursa(job #2847714)
| Utilizator | Data | 11 februarie 2022 12:13:40 | |
|---|---|---|---|
| Problema | Pascal | Scor | 50 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva de probleme | Marime | 2.19 kb |
#include <fstream>
using namespace std;
ifstream fin("pascal.in");
ofstream fout("pascal.out");
int n,i,j,p,d,v[500005],nr,q[500005];
int main()
{
fin >>n>>d;
if (d==2)
{
for(i=2;i<=n;i=i*2)
{
for(j=i;j<=n;j=j+i)
{
v[j]++;
}
}
for(i=1;i<=n;i++)
{
v[i]=v[i]+v[i-1];
}
for(i=1;i<=n-1;i++)
{
if(v[n]-v[i]-v[n-i]!=0) nr++;
}
fout <<nr;
}
if (d==3)
{
for(i=3;i<=n;i=i*3)
{
for(j=i;j<=n;j=j+i)
{
v[j]++;
}
}
for(i=1;i<=n;i++)
{
v[i]=v[i]+v[i-1];
}
for(i=1;i<=n-1;i++)
{
if(v[n]-v[i]-v[n-i]) nr++;
}
fout <<nr;
}
if (d==4)
{
for(i=2;i<=n;i=i*2)
{
for(j=i;j<=n;j=j+i)
{
v[j]++;
}
}
for(i=1;i<=n;i++)
{
v[i]=v[i]+v[i-1];
}
for(i=1;i<=n-1;i++)
{
if(v[n]-v[i]-v[n-i]>=2) nr++;
}
fout <<nr;
}
if (d==5)
{
for(i=5;i<=n;i=i*5)
{
for(j=i;j<=n;j=j+i)
{
v[j]++;
}
}
for(i=1;i<=n;i++)
{
v[i]=v[i]+v[i-1];
}
for(i=1;i<=n-1;i++)
{
if(v[n]-v[i]-v[n-i]) nr++;
}
fout <<nr;
}
if (d==6)
{
for(i=2;i<=n;i=i*2)
{
for(j=i;j<=n;j=j+i)
{
v[j]++;
}
}
for(i=1;i<=n;i++)
{
v[i]=v[i]+v[i-1];
}
for(i=3;i<=n;i=i*3)
{
for(j=i;j<=n;j=j+i)
{
q[j]++;
}
}
for(i=1;i<=n;i++)
{
q[i]=q[i]+q[i-1];
}
for(i=1;i<=n-1;i++)
{
if(q[n]-q[i]-q[n-i]!=0 && v[n]-v[i]-v[n-i]!=0) nr++;
}
fout <<nr;
}
return 0;
}
