2017.10.24
只查找一半就可以,如果全部查找的话,会超时。
public class Solution {
/*
* @param : the given number
* @return: whether whether there're two integers
*/
public boolean checkSumOfSquareNumbers(int num) {
// write your code here
if(num < 0){
return false;
}
ArrayList<Integer> list = new ArrayList<Integer>();
int tmp = (int)Math.sqrt(num);
if(tmp * tmp == num){
return true;
}
for(int i = 0; i <= tmp; i++){
list.add(i*i);
}
for(int i = tmp; i >= tmp/2; i--){
if(list.contains(num - list.get(i))){
return true;
}
}
return false;
}
};