Cod sursa(job #1528408)
| Utilizator | Data | 19 noiembrie 2015 17:33:46 | |
|---|---|---|---|
| Problema | Divk | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.65 kb |
#include <stdio.h>
using namespace std;
int cb(int x)
{
int i=0,pas=1<<10;
while(pas!=0)
{
int y=i+pas;
if(y*y*y<=x)
i+=pas;
pas>>=1;
}
return i+1;
}
int main()
{
FILE *fin, *fout;
fin=fopen("dartz.in","r");
fout=fopen("dartz.out","w");
int i,n,suma=0,val;
bool flag=0;
fscanf(fin,"%d",&n);
n/=2;
i=1;
while(flag==0)
{
suma=i*i*i-i;
val=cb(n-suma);
if(val*val*val-val==n-suma)
flag=1;
i++;
}
i--;
fprintf(fout,"%d %d %d %d",i-1,val-1,i-1,val-1);
return 0;
}