每日一题(小白)暴力娱乐篇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 
相关推荐
一轮大月亮几秒前
JavaScript es6 语法 map().filter() 链式调用,语法解析 和常见demo
开发语言·javascript·es6
倔强的石头_10 分钟前
二分查找算法的概念、原理、效率以及使用C语言循环和数组的简单实现
后端·算法
QZQ5418810 分钟前
MIT6.824(2024春)Raft-lab3B代码分析
算法
在下uptown12 分钟前
数据同步系统搭建方案
java·后端·架构
_extraordinary_12 分钟前
Java String的使用续 -- StringBuilder类和StringBuffer
java·开发语言
倔强的石头_14 分钟前
【数据结构与算法】深入理解 单链表
后端·算法
用户6118472654215 分钟前
《Java 实战:用 Spring Boot 快速构建一个 RESTful 接口服务》
java
程序员岳焱15 分钟前
11.Java I/O 流:文件读写与数据持久化
java·后端
~央千澈~23 分钟前
评论功能开发全解析:从数据库设计到多语言实现-优雅草卓伊凡
java·前端·数据库
异常君27 分钟前
Java 调用 Python:五种实用方法全面对比与实战案例
java·python