每日一题(小白)暴力娱乐篇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 
相关推荐
yaaakaaang几秒前
十三、责任链模式
java·责任链模式
爱吃烤鸡翅的酸菜鱼3 分钟前
【Java】封装位运算通用工具类——用一个整数字段替代几十个布尔列,极致节省存储空间
java·开发语言·设计模式·工具类·位运算·合成复用原则
网域小星球4 分钟前
C 语言从 0 入门(二十一)|typedef 类型重定义:简化复杂类型,代码更清爽
c语言·算法·类型重定义·结构体简化·函数指针简化
xinhuanjieyi6 分钟前
php给30支NBA球队添加logo图标,做好对应关系
android·开发语言·php
XWalnut9 分钟前
LeetCode刷题 day10
数据结构·算法·leetcode
菜菜小狗的学习笔记10 分钟前
八股(三)Java并发
java·开发语言
云烟成雨TD14 分钟前
Spring AI Alibaba 1.x 系列【10】ReactAgent 工具加载和执行流程
java·人工智能·spring
lee_curry15 分钟前
JUC第一章 java中基础概念和CompletableFuture
java·多线程·并发·juc
一晌小贪欢27 分钟前
PyQt5 开发一个 PDF 批量合并工具
开发语言·qt·pdf
神仙别闹28 分钟前
基于 MATLAB 实现的图像信号处理
开发语言·matlab·信号处理