Furik loves math lessons very much, so he doesn't attend them, unlike Rubik. But now Furik wants to get a good mark for math. For that Ms. Ivanova, his math teacher, gave him a new task. Furik solved the task immediately. Can you?
You are given a system of equations:
You should count, how many there are pairs of integers (a, b) (0 ≤ a, b) which satisfy the system.
A single line contains two integers n, m (1 ≤ n, m ≤ 1000) — the parameters of the system. The numbers on the line are separated by a space.
On a single line print the answer to the problem.
9 3
1
14 28
1
4 20
0
In the first sample the suitable pair is integers (3, 0). In the second sample the suitable pair is integers (3, 5). In the third sample there is no suitable pair.
这题一开始做时把两个合并得出(m-b^2)^2+b=n,只以这样来计算总数,最后肯定wa。。。
因为还需要判断一下这种情况下得出的b=n^2-a是不是大于等于零。
#include<bits/stdc++.h>
#define min(a,b) a>b?a:b
int main()
{
int n,m;
while(scanf("%d%d",&n,&m)!=EOF)
{
int sum=0,a,b;
for(int a=0;a<=1000;a++)
{
if(a*a*a*a-2*n*a*a+a==m-n*n)
{
b=n-a*a;
if(b>=0)
sum++;
}
}
printf("%d\n",sum);
}
return 0;
}