本文主要是介绍工行2020校招提前批,完全平方数题目,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
题目:判断一个数是否能若干个完全平方数(比如 1, 4, 9, 16, …)相加得到,如果没有则输出"NA",有则输出。比如17=1 +16,题目理解出不能有重复的平方数,因为所有的数都可以用1+1+1+...+1得到,但是题目有"NA"可以输出。
但是当输入值为8时,输出了两个4,即8=4+4.暂时没解决。
import java.util.Scanner;public class allSquare {public static void main(String[] args) {Scanner sc=new Scanner(System.in);int num=sc.nextInt(),num_x=1;//num_x是减去最大平方数后的值int []mm=new int[num];int flag=0;//用来判断是否有多个1StringBuilder str=new StringBuilder();while(num_x!=0){int a=(int)Math.sqrt(num);num_x=num-a*a;if(a*a==1){flag++;if(flag==2) {System.out.print("NA");return;}}if(a*a==num){
这篇关于工行2020校招提前批,完全平方数题目的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!