35.四方定理

news2024/11/16 5:40:58

上海市计算机学会竞赛平台 | YACSYACS 是由上海市计算机学会于2019年发起的活动,旨在激发青少年对学习人工智能与算法设计的热情与兴趣,提升青少年科学素养,引导青少年投身创新发现和科研实践活动。icon-default.png?t=N7T8https://www.iai.sh.cn/problem/477

题目背景

四方定理是数论中著名的一个定理,指任意一个自然数都可以拆成四个自然数的平方之和。例如:

题目描述

给定一个自然数 𝑛,请输出 𝑛 的所有四平方拆分方案。

输入格式

单个整数:表示 𝑛。

输出格式

若干行:每行四个由小到大排列的自然数,表示一种拆分方案。如果有多种方案,先输出首项较小的方案,对于首项相同的方案,先输出第二项较小的方案,其他情况以此类推。

数据范围

0≤𝑛≤50,000。

>>>>>>分割线>>>>>>>>>>>>>分割线>>>>>>>>>>>>>分割线>>>>>>>>>>>>>分割线>>>>>>>

思路

1.常规思路:四层嵌套循环,按最大值预估,会执行200*200*200*200=16亿多次,超时。

2.找出规律:a²+b²+c²+d²=n

  • 假设a=b=c=d,则a=sqrt(n/4), 范围缩小

  • 假设a=0,b=c=d,则b=sqrt(n/3), 范围进一步缩小

  • 假设a=b=0,c=d,则c=sqrt(n/2), 范围再进一步缩小

  • 假设a=b==c=0,则d=sqrt(n), 范围缩小

程序

#include <bits/stdc++.h>
using namespace std;
int n;
int main()
{
	cin>>n;
	for(int l=0;l<=sqrt(n/4);l++)
	for(int k=l;k<=sqrt(n/3);k++)
	for(int j=k;j<=sqrt(n/2);j++)
	for(int i=j;i<=sqrt(n);i++)	
	if(n==i*i+j*j+k*k+l*l)
	cout<<l<<" "<<k<<" "<<j<<" "<<i<<endl;

    return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1812821.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

CyberDAO:引领Web3时代的DAO社区文化

致力于Web3研究和孵化 CyberDAO自成立以来&#xff0c;致力于推动Web3研究和孵化&#xff0c;吸引了来自技术、资本、商业、应用与流量等领域的上千名热忱成员。我们为社区提供多元的Web3产品和商业机会&#xff0c;触达行业核心&#xff0c;助力成员捕获Web3.0时代的红利。 目…

82. 删除排序链表中的重复元素 and II

链接直达&#xff1a; 保留重复元素 不保留重复元素 题目&#xff1a; 1: 给定一个已排序的链表的头 head &#xff0c; 删除所有重复的元素&#xff0c;使每个元素只出现一次 。返回 已排序的链表 。示例 1&#xff1a;输入&#xff1a;head [1,1,2] 输出&#xff1a;[1…

《数据结构与算法之美》学习笔记二

前言&#xff1a;本篇文章介绍了一下二叉树中的基本知识点&#xff0c;包括二叉树的种类、二叉树的存储方式以及二叉树的深度和广度优先遍历&#xff1b;以及《数据结构与算法》中对于数组的讲解记录&#xff0c;只记录了本前端能看懂的&#x1f913;&#xff0c;还有很多知识点…

codeanalysis服务端Windows环境运行

1、在每个微服务中创建log文件夹 2、

接口+接口自动化测试疑难解答,一篇带你策底打通...

前言 1、你们做接口测试的流程一般是怎么样的&#xff1f; 接口测试的流程其实和功能测试的流程类似&#xff0c;因为接口测试依赖的主要对象也是需求说明书&#xff0c;所以&#xff0c;最初的流程就是参与需求讨论&#xff0c;评审需求。 需求确定以后&#xff0c;开发会根…

蚁群算法的优化计算——旅行商问题(TSP)优化matlab

微♥关注“电击小子程高兴的MATLAB小屋”获得资料 一&#xff0c;理论基础 生物学家研究发现&#xff0c;蚂蚁在寻找食物时&#xff0c;会在其经过的路径上释放一种信息素&#xff0c;并能够感知其他蚂蚁释放的信息素。信息素浓度的大小表示路径的远近&#xff0c;浓度越高&a…

大众点评全国宠物店铺POI采集13万家-2024年5月底

大众点评全国宠物店铺POI采集13万家-2024年5月底 店铺POI点位示例&#xff1a; 店铺id iJLEF6dlJjeeUum4 店铺名称 联合动物医院(汉口总院) 十分制服务评分 9.3 十分制环境评分 9.2 十分制划算评分 9.3 人均价格 679 评价数量 4879 店铺地址 解放大道1725附2号&#x…

catia展开模型树

1 直接点号 2 选中零件&#xff0c;右击--命令--将图居中即可 一般都是上面这样有选择性的展开 如果要一次性都展开那

【Spring6】1-12章源码级深入详解 IoC

一、Spring启示录 阅读以下代码&#xff1a; package com.powernode.oa.controller;import com.powernode.oa.service.UserService; import com.powernode.oa.service.impl.UserServiceImpl;public class UserController {private UserService userService new UserServiceI…

Linux-笔记 全志平台镜像中添加git提交号

引言 通过在镜像中某个位置添加git提交号&#xff0c;可以方便排查与追溯是哪个提交编译出来的。 这里使用的全志T113平台&#xff0c;SDK为Tina5.0。 实现的办法有&#xff1a; 1、内核/proc/cpuinfo的打印信息及设备树中查看提交号 2、从设备树查看提交号 3、从uboot启动…

Springboot3+自动装配

导言&#xff1a;这里主要讲述springboot3以后spring.factories功能失效&#xff0c;带来的解决办法。 之前有一次希望用springboot模块拿到工具模块的配置configuration的时候&#xff0c;想通过之前的spring.factories来实现自动装配&#xff0c;但是发现一直拿不到配置&…

java:FeignClient通过RequestInterceptor自动添加header

示例代码 【pom.xml】 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><version>2.3.12.RELEASE</version> </dependency> <dependency><groupId>o…

222、求出完全二叉树的节点

给你一棵 完全二叉树 的根节点 root &#xff0c;求出该树的节点个数。 完全二叉树 的定义如下&#xff1a;在完全二叉树中&#xff0c;除了最底层节点可能没填满外&#xff0c;其余每层节点数都达到最大值&#xff0c;并且最下面一层的节点都集中在该层最左边的若干位置。若最…

Exposure X7官方版下载-Alien Skin Exposure X7软件最新版安装步骤

​Exposure是用于创意照片编辑的最佳图像编辑器&#xff0c;Exposure结合了专业级照片调整&#xff0c;庞大的华丽照片外观库以及高效的设计&#xff0c;使其使用起来很愉悦&#xff0c;新的自动调整功能可简化您的工作流程&#xff0c;并使您进入创意区。 ​安 装 包 获 取 地…

代码随想录-Day29

491. 非递减子序列 给你一个整数数组 nums &#xff0c;找出并返回所有该数组中不同的递增子序列&#xff0c;递增子序列中 至少有两个元素 。你可以按 任意顺序 返回答案。 数组中可能含有重复元素&#xff0c;如出现两个整数相等&#xff0c;也可以视作递增序列的一种特殊情…

Game-Fi 新贵 MetaArena 项目全解析:重塑区块链游戏生态

在区块链技术迅猛发展的浪潮中&#xff0c;全球各行业都在探索如何利用这一革命性技术来提升效率、降低成本&#xff0c;并创造新的商业模式。游戏行业作为数字娱乐的核心领域之一&#xff0c;也在经历前所未有的变革。尽管传统游戏巨头如Steam和任天堂已推出Web3元宇宙游戏产品…

Android 如何调试已经运行在手机/模拟器中的软件界面上的像素 layout margin 等布局参数 用 Layout Inspector 工具

文章目录 Intro场景Layout Inspector 窗口的打开方式Tools --> Layout InspectorView --> Tool Windows --> Layout Inspector通用的方法 Help --> 搜索Layout Inspector Intro 一句话&#xff1a; Android Studio 有一个叫 Layout Inspector/布局检查器的工具&am…

【three.js】光源对物体表面影响

目录 一、受光照影响材质 二、光源简介 2.1 点光源 光源位置 点光源辅助观察 完整代码,粘贴即用 2.2 环境光 2.3 平行光 平行光辅助观察 实际生活中物体表面的明暗效果是会受到光照的影响,比如晚上不开灯,你就看不到物体,灯光比较暗,物体也比较暗。在threejs中,…

多个线程多个锁:如何确保线程安全和避免竞争条件

目录 前言 一、确定需要多个锁的场景 1.独立资源保护 2.部分依赖资源 二、避免死锁 三、锁粒度与并发性能 1. 粗粒度锁定 2.细粒度锁定 四、设计策略&#xff1a;减少资源依赖 1.资源分离 2.无锁设计 3.锁合并 五、Demo讲解 总结&#xff1a; 前言 当多个线程需要…

机器人建模、运动学与动力学仿真分析(importrobot,loadrobot,smimport)

机器人建模、运动学与动力学仿真分析是机器人设计和开发过程中的关键步骤。 一、机器人建模 机器人建模是描述机器人物理结构和运动特性的过程。其中&#xff0c;URDF&#xff08;Unified Robot Description Format&#xff09;是一种常用的机器人模型描述方法。通过URDF&…