每日一题(小白)暴力娱乐篇26

我们先直接尝试暴力循环四轮看能不能得到答案,条件:四个数的平方相加等于这个数

①接收答案result

②循环四轮i,j,k,l

③如果i*i+j*j+k*k+l*l=result

④按照要求的格式输出这四个数字

代码如下👇

复制代码
	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);
		int result=scan.nextInt();
		int []arr=new int[4];
		int ans=(int) (Math.sqrt(result)+1);
		boolean b=false;
		for (int i = 0; i < ans; i++) {//开始循环
			if (i*i>result) {
				break;//为了不超时加入条件
			}
			for (int j = i; j < ans; j++) {
				if (i*i+j*j>result) {
					break;//为了不超时加入条件
				}
				for (int k = j; k < ans; k++) {
					if (i*i+j*j+k*k>result) {
						break;//为了不超时加入条件
					}
					for (int l = k; l < ans; l++) {
						if (i*i+j*j+k*k+l*l==result) {
							arr[1]=i;
							arr[2]=j;
							arr[0]=k;
							arr[3]=l;
							b=false;
							break;//为了不超时加入条件
						}
					}
					if (b) {
						break;//为了不超时加入条件
					}
				}
				if (b) {
					break;//为了不超时加入条件
				}
			}
			if (b) {
				break;//为了不超时加入条件
			}
		}
		Arrays.sort(arr);//排序输出
		for (int i = 0; i < arr.length; i++) {
			System.out.print(arr[i]+" ");
		}
			    
		scan.close();
	}

希望大家能动手自己尝试尝试这个代码非常的有意思掌握暴力冲刺国奖

测试用例👇

复制代码
12

0 2 2 2

15000

56 58 60 70 
相关推荐
深漂阿碉11 分钟前
VS2022 & Qt配置Qxlsx
开发语言·qt
minji...21 分钟前
C语言 指针(7)
c语言·开发语言
阿让啊29 分钟前
C语言结构体内存对齐使用场景
c语言·开发语言·数据结构·单片机·算法
CodeWithMe36 分钟前
【C/C++】基础之原子操作
c语言·开发语言·c++
九转苍翎1 小时前
JAVA SE(9)——多态
java
好想像大佬一样能够ak所有1 小时前
蓝桥杯-通电(最小生成树java)
java·数据结构·算法·蓝桥杯
JieJet1 小时前
[蓝桥杯 2025 省 B] 画展布置
数据结构·c++·算法·蓝桥杯
就叫年华吧丶1 小时前
Apache POI实现Excel的基本写入、导出操作
java·maven·apache·excel
该醒醒了~1 小时前
C#中从本地(两个路径文件夹)中实时拿图显示到窗口中并接收(两个tcp发送的信号)转为字符串显示在窗体中实现检测可视化
开发语言·c#
muyouking111 小时前
Rust中避免过度使用锁导致性能问题的策略
开发语言·后端·rust