C. Assembly via Minimums

news2025/2/22 1:56:25

题目:样例:

输入
5
3
1 3 1
2
10
4
7 5 3 5 3 3
5
2 2 2 2 2 2 2 2 2 2
5
3 0 0 -2 0 -2 0 0 -2 -2

输出
1 3 3
10 10
7 5 3 12
2 2 2 2 2
0 -2 0 3 5

思路:

        数学思维题,构造算法,这里我们从样例中可以知道,可能的 数组 a 最后一个元素一定是最大的,其次,根据数学的思维,找出性质,当 一个 数列从小到达的排序能构造出 像 序列 b 的元素,其中我们要注意限制的可能序列 a 的个数

代码详解如下:

#include <iostream>
#include <cstring>
#include <algorithm>
#include <queue>
#include <cmath>
#include <unordered_map>
#define endl '\n'
#define int long long
#define YES puts("YES")
#define NO puts("NO")
#define umap unordered_map
#pragma GCC optimize(3,"Ofast","inline")
#define ___G std::ios::sync_with_stdio(false),cin.tie(0), cout.tie(0)
using namespace std;
const int N = 2e6 + 10;

inline void solve()
{
	int n;	//  数组 a 大小
	cin >> n;
	int m = n * (n - 1) / 2;	// 数组 b 的大小
	int b[m];	// 定义数组 b
	
	for(int i = 0;i < m;++i)
	{
		cin >> b[i];	
	}
	
	//排序 b 
	sort(b,b + m);
	
	//开始构造 a
	// 这里的 i += --n  是需要一个最大数
	// 使得 可能数组 a 取得最小数,而 --n 是因为去掉我们比较过后的
	for(int i = 0;i < m;i += --n)
	{
		cout << b[i] << ' ';
	}
	// 最后比较过后肯定还剩下一个元素,是作为最后比较的元素
	// 而这个元素应该无穷大,所以最后输出数据范围的最大值
	
	cout << 1000000000 << endl;
	
}


signed main()
{
//	freopen("a.txt", "r", stdin);
	___G;
	int _t = 1;
	cin >> _t;
	while (_t--)
	{
		solve();
	}

	return 0;
}

 最后提交:

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

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

相关文章

当我出现在股友面前,他们笑了,这是来自最佳策略app平台的自信

我的人生就仿佛被提前安排好了一样&#xff1a;三年的自考&#xff0c;三年的打工&#xff0c;五年的炒股等等&#xff0c;这么丰富的履历&#xff0c;小说男主都很少有&#xff0c;可这一切都发生在我的身上。 不知道怎么回事&#xff0c;高考我竟然睡着了&#xff0c;我就这样…

【excel密码】如何保护部分excel单元格?

Excel文件可以设置保护工作表&#xff0c;那么可以只保护工作表中的部分单元格&#xff0c;其他地方可以正常编辑吗&#xff1f;当然是可以的&#xff0c;今天我们学习&#xff0c;如何设置保护部分单元格。 首先&#xff0c;我们先将整张工作表选中&#xff08;Ctrl A&#…

【RapidAI】P0 项目总览

RapidAI 项目总览 ** 内容介绍 ** Author&#xff1a; SWHL、omahs Github&#xff1a; https://github.com/RapidAI/Knowledge-QA-LLM/ CSDN Author&#xff1a; 脚踏实地的大梦想家 UI Demo&#xff1a; ** 读者须知 ** 本系列博文&#xff0c;主要内容为将 RapidAI 项目逐…

2023欧亚合作发展大会暨国际公共采购大会在京举行

2023年9月2日至6日&#xff0c;以“合作、协同、共赢、共享”为主题的“2023欧亚合作发展大会暨国际公共采购大会等系列会议”在北京炎黄书院隆重举行&#xff0c;共有500多位中外贵宾参加了本次盛会。 本次大会指导单位是中国联合国采购促进会、北京市中医药局&#xff0c;由中…

20套面向对象程序设计选题Java Swing(含教程) (二) 持续更新 建议收藏

20套面向对象程序设计选题Java Swing(含教程) (一) 7. 员工工资管理系统 视频教程&#xff1a; 【课程设计】员工工资管理系统-Java Swing-你的课程我设计 功能描述&#xff1a; 系统员工有"工号"、 “姓名”、“性别”、“岗位”、 "入职年份 "、"…

删除文件PermissionError: [WinError 32] 另一个程序正在使用此文件,进程无法访问。

删除文件PermissionError: [WinError 32] 另一个程序正在使用此文件&#xff0c;进程无法访问。 问题描述解决方案另外一个问题解决方案 问题描述 是想写一个脚本删除长宽比不对的图片 # coding: utf-8 from PIL import Image, ImageDraw, ImageFont import os import shuti…

Canvas学习01

基础 1、基本概念 Canvas是一个标准的HTML5元素Canvas主要聚焦于2D图形&#xff0c;提供了非常多的JavaScript绘图API&#xff08;比如&#xff1a;绘制路径、矩形、圆、文本和图像等方法&#xff09;也可以使用元素对象的 WebGL API 来绘制 2D 和 3D 图形 2、Canvas 优点&a…

AWB-Tuning(1)

一、白平衡的概念 AWB – Auto White Balance 白平衡就是&#xff1a;不管在任何光源下&#xff0c;都能将拍摄的白色物体的图像还原为白色 人眼在早晨、中午、晚上 不同色温下都能准确看到白色。 CMOS 要获得这种能力&#xff0c;必须对每种光源做相应的色彩校准&#xff0c…

asm disk被加入到另外一个磁盘组故障恢复---惜分飞

有朋友在aix环境对其中一个rac的asm磁盘组进行扩容 之后另外一套rac的磁盘组直接dismount Wed Aug 23 12:44:02 2023 NOTE: SMON starting instance recovery for group DATA domain 2 (mounted) NOTE: F1X0 found on disk 0 au 2 fcn 0.128808679 NOTE: SMON skipping disk …

RocketMQ 快速搭建与控制台搭建

一、下载资料及环境准备 这里 下载路径 可以下载对应的版本&#xff0c;本文以 4.9.5 为例&#xff1a;下载这里的Binary 为Linux 安装文件&#xff0c;Source 也下载&#xff0c;方便后续使用。 将下载后的包进行解压&#xff1a; 由于RockerMQ 的建议运行环境较大&#xff…

解决pyside6-uic生成py代码中文为unicode(乱码)的问题

前言 本来想用Java做客户端&#xff0c;后来发现很多算法还是Python有现成的比较方便。 所以最终选择了pyside6。但是用Designer&#xff08;QT设计师&#xff09;设计完后&#xff0c;生成的代码中文部分显示为unicode&#xff0c;也可以理解为乱码。 就像这样&#xff1a;…

MybatisPlus 扩展功能 代码生成 逻辑删除 通用枚举 字段类型处理器 配置加密

MybatisPlus 核心功能 条件构造器 自定义SQL Service接口 静态工具_软工菜鸡的博客-CSDN博客 3.扩展功能 3.1.代码生成 在使用MybatisPlus以后&#xff0c;基础的Mapper、Service、PO代码相对固定&#xff0c;重复编写也比较麻烦。因此MybatisPlus官方提供了代码生成器根据数据…

pytorch-v2.0.1 cuda arm64 aarch64 torch 2.0.1+cu118 源码编译笔记【2】验证cuda安装 成功

接上篇 pytorch-v2.0.1 cuda arm64 aarch64 torch 2.0.1cu118 源码编译笔记_hkNaruto的博客-CSDN博客 由于采用/usr/local/bin/gcc编译&#xff0c;先设置LD_LIBRARY_PATH&#xff0c;再启动python3 export LD_LIBRARY_PATH/usr/local/lib64:/usr/local/lib:/usr/lib64:/usr/…

高德Android高性能高稳定性代码覆盖率技术实践

前言 代码覆盖率(Code coverage)是软件测试中的一种度量方式&#xff0c;用于反映代码被测试的比例和程度。 在软件迭代过程中&#xff0c;除了应该关注测试过程中的代码覆盖率&#xff0c;用户使用过程中的代码覆盖率也是一个非常有价值的指标&#xff0c;同样不可忽视。因为…

Spring 6.0和SpringBoot 3.0新特性

目录 主要更新内容是以下几个&#xff1a; AOT编译 Spring Native GraalVM SpringBoot3生成二进制可执行文件底层流程 主要更新内容是以下几个&#xff1a; A Java 17 baselineSupport for Jakarta EE 10 with an EE 9 baselineSupport for generating native images with…

录音转写和AI质检的区别和使用场景

区别&#xff1a; 录音转写是将语音或录音转化为文本形式的过程。它通常涉及使用自然语言处理技术和语音识别算法来将音频文件中的语音转换为可读的文本格式。 AI质检是一种利用人工智能技术对客户服务、销售和其他电话中心交互进行自动化评估的过程。通过分析和评估客户和代…

【C++】STL案例2-员工分组

#include <iostream> using namespace std;#include<vector> #include<map>#define CHEHUA 0 //策划部门 #define MEISHU 1 //美术部门 #define YANFA 2 //研发部门class Worker { public:string m_Name;int m_Salary; };void createWorker(vector<…

flask使用Flask-Mail实现邮件发送

Flask-Mail可以实现邮件的发送&#xff0c;并且可以和 Flask 集成&#xff0c;让我们更方便地实现此功能。 1、安装 使用pip安装&#xff1a; $ pip install Flask-Mail或下载源码安装&#xff1a; $ git clone https://github.com/mattupstate/flask-mail.git $ cd flask-…

Java线程与锁常考知识点

Java线程与锁常考知识点 基础篇1. 创建线程的几种方式2. 线程池创建的方式3. 线程池提交任务的流程4. 线程池有哪些状态 进阶篇1. 说说对线程安全的理解2. 对守护线程的理解3. ThreadLocal的底层原理4. 并发、并⾏、串⾏之间的区别5. Java死锁如何避免&#xff1f;6. 线程池的底…

滑动窗口实例8(最小覆盖子串)

题目&#xff1a; 给你一个字符串 s 、一个字符串 t 。返回 s 中涵盖 t 所有字符的最小子串。如果 s 中不存在涵盖 t 所有字符的子串&#xff0c;则返回空字符串 "" 。 注意&#xff1a; 对于 t 中重复字符&#xff0c;我们寻找的子字符串中该字符数量必须不少于 t…