Page 4 of 5
Re: 11428 - Cubes
Posted: Sat Nov 09, 2013 6:19 am
by X123
Hi brianfry, for 631 my output is 15 14
Re: 11428-I am tired getting WA again& again
Posted: Sat Nov 09, 2013 6:23 am
by X123
Sorry
Re: 11428 - Cubes
Posted: Tue Nov 12, 2013 12:25 am
by brianfry713
Your code has precision errors. When N = 631 and i = 14, on my system c = 14 and t = 0. The cuberoot of 3375 is exactly 15. Casting a double to an int is dangerous without adding a small value like 1e-8.
Re: 11428 - Cubes
Posted: Tue Nov 12, 2013 7:30 pm
by X123
i add 0.0003 with the double value. but i am still getting WA. i have also tried with float. i tested my code for all the values from 1 t0 10000.plz,brianfry..tell me if the algorithm is ok! if its not then why?! and how can i improve this?
after adding 0.003 here is my new code-
plz help me
[removed]
Re: 11428 - Cubes
Posted: Wed Nov 13, 2013 12:26 am
by brianfry713
Your code is AC in C++. In C, it's always printing No solution. You could also try solving it without using floating point.
Re: 11428 - Cubes
Posted: Wed Nov 13, 2013 8:50 am
by X123
thanx brianfry ..thanx a lot.is the cuberoot the cause?
Re: 11428 - Cubes
Posted: Fri Nov 15, 2013 1:22 am
by brianfry713
Yes, cbrt() is not part of ANSI C, it is returning 1.0 with any argument.
11428 - Cubes why WA?????
Posted: Wed Aug 27, 2014 11:54 am
by unreleased
#include <iostream>
#include <vector>
using namespace std;
int main()
{
int a, b ,c, n;
long x;
while(cin>>n)
{
bool z=false;
if(n==0) break;
if(n==1)
{
cout<<"1 0\n";
continue;
}
for(a=1; a*a<n; a++)
{
x=a*a*a;
if(x==n)
{
cout<<a<<" 0\n";
z=true;
}
if(x>n)
{
for(b=1; b<a; b++)
{
long y=b*b*b;
if(x-y==n)
{
cout<<a<<" "<<b<<"\n";
z=true;
break;
}
}
}
}
if(z==false)
cout<<"No solution\n";
}
return 0;
}
Re: 11428 - Cubes
Posted: Wed Aug 27, 2014 7:46 pm
by brianfry713
Next time post in the existing thread. Input 1, AC output No solution
Re: 11428 - Cubes
Posted: Wed Aug 27, 2014 8:21 pm
by lighted
Each of these lines contains two positive integers x, y separated by a single space, such that
Re: 11428 - Cubes
Posted: Wed Aug 27, 2014 8:34 pm
by unreleased
brianfry713 wrote:Next time post in the existing thread. Input 1, AC output No solution
Input 1, AC output No solution???
i dont understand :p
but i think for which case output could be 2 set or more this code printing all of them causing the ERROR.....
Re: 11428 - Cubes
Posted: Wed Aug 27, 2014 9:33 pm
by lighted
Input
Acc output
Your output
Both
x, y must be
positive.
Re: 11428 - Cubes
Posted: Mon Sep 01, 2014 9:45 pm
by shaficse
i am getting WA but i got accurate answer using
http://www.udebug.com/UVa/11428 output:
#include <iostream>
#include <cstdio>
#include <cmath>
using namespace std;
int main()
{
int num;
int arr[100];
int a,b;
// freopen("text.txt","r",stdin);
while(scanf("%d",&num)==1)
{
if(num==0) break;
int flag=0;
if(num==1) printf("1 0\n");
else {
for(int i=0;i<=sqrt(num);i++)
{
arr
=i;
}
for(int i=0;i<sqrt(num);i++)
{
for(int j=i+1;j<sqrt(num);j++)
{
if(((arr[j]*arr[j]*arr[j])-(arr*arr*arr))==num)
{
a=arr[j];
b=arr;
flag=1;
break;
}
}
}
if(flag==1) printf("%d %d\n",a,b);
else printf("No solution\n");
}
}
return 0;
}
Re: 11428 - Cubes
Posted: Wed Sep 03, 2014 7:36 pm
by lighted
Use code tags.
Input
Code: Select all
8
721
728
999
3367
5768
5824
7992
0
Output
Code: Select all
No solution
9 2
9 1
10 1
15 2
18 4
18 2
20 2
According to problem description
Each of these lines contains two positive integers x, y separated by a single space, such that N = x^3 - y^3.
Maybe Judge doesn't have input when N = x^3.
It will be good if you remove all your codes after getting accepted.

Re: 11428 - Cubes
Posted: Wed Sep 03, 2014 9:03 pm
by brianfry713
try solving it without using floating point