Wooden Toy Festival 题解

Wooden Toy Festival题解

题目在这 题目在这 题目在这

思路 : :

二分,二分距离,首先肯定要排序,然后这题还得去一下重(因为题目说了"雕刻师们都是非常熟练的人,可以同时为不同的人完成订单",那当然要让他们同时做一种就行了)。

然后还要找出区间内的三个点,能够覆盖整个区间即可满足题意。

找最小覆盖区间的距离,在于找最小距离,也就可以二分距离,找出三段 2 ∗ d 2*d 2d的长度可以覆盖全部区间的最小 d d d,也就是最后的答案。

上代码:

#include <iostream>		// 基本入出力ストリーム
#include <algorithm>	// 一般的なアルゴリズム(ソート、ルックアップ、やり直し、二分ルックアップなど)
#include <vector>		// 動的配列(スペースが足りないと自動的に拡張されます)
#include <queue>		//  スタック(先に入って先に出ます)
#include <stack>		// スタック(先に入ってから出ます)
#include <set>			// 集合(反復しない順序)です
#include <map>			// キー値対コンテナ(マッピング)
#include <list>			//  両方向リスト
#include <math.h>		//  すうがくかんすう
#include <functional>	// 通用的函数绑定和调用机制一般的なバインディングと呼び出しの仕組み#define endl '\n'
#define pii pair<int, int>
#define pdd pair<double, double>
#define fi first
#define se second
#define pb push_back
#define eb emplace_backusing namespace std;const int inf = 1e9 + 7;
const int mod = 998244353;
const int N = 2e5 + 10, M = N << 1;int n;
long long a[N];bool check(int x)//检查一下,亲
//找出三段2*d的长度可以覆盖全部区间的最小d,也就是最后的答案。
{int cnt = 0;//数个数int in = 1;for(int i = 2; i <= n; i++){if(a[in] + 2 * x < a[i]){in = i;cnt++;}}return cnt < 3;
}
void solve() {cin >> n;set<long long> s;//自动排序 / 自动去重 -> setfor(int i = 1; i <= n; i++) {//将数据导入到 set 集合 / long long 数组中cin >> a[i];s.insert(a[i]);}if(s.size() <= 3) {//不用任何时间:|x-y|(x==y)=0cout << 0 << endl;return;//直接下一次}sort(a + 1, a + 1 + n);//数组内排序int l = 0;//看好了,我要开始二分咯int r = a[n];//最后一个while(l < r) {int mid = (l + r) >> 1;if(check(mid)) //检查一下,亲r = mid;//往左缩else l = mid + 1;//a……往右缩}cout << l << endl;//答案\(*^▽^*)/
}signed main() {ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);int t;cin >> t;	// 非多组测试数据请注释该行while(t--) solve();return 0;
}

已AC请放心食用

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

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

相关文章

成为一个ATE工程师是什么体验?

当你成为ATE工程师&#xff0c;是什么感受&#xff1f; 按照业内资深工程师的玩笑话来说&#xff1a;整的是比劳斯莱斯还贵的设备&#xff0c;更高端的机台顶得起上海几套房。 1、什么是ATE测试&#xff1f; 一颗芯片的生命周期始于市场需求&#xff0c;从产品的定义与设计&…

蓝桥杯-dfs搜索模板题(一)

蓝桥杯-dfs搜索模板题&#xff08;一&#xff09; P2089 烤鸡P1088 火星人P1149 火柴棒等式P2036 PERKETP1135 奇怪的电梯结语 P2089 烤鸡 对于每个位置枚举数字 #include<bits/stdc.h>using namespace std;const int N1010;int n;int arr[N];//临时方案 int res0;//方案…

蓝桥杯题目中的二分查找

前言 众所周知蓝桥杯会暴力&#xff0c;那么拿奖也是很轻松&#xff0c;甚至拿省一&#xff0c;有些题甚至直接用暴力就是对的&#xff0c;二分查找就是暴力中常用的算法&#xff0c;这篇文章就用蓝桥杯中的题目去介绍如何用二分查找去解题&#xff0c;对于二分查找的基础知识…

163 Linux C++ 通讯架构实战17,本地套接字整理对比,IPC:pipe,fifo,mmap,信号,本地套

IPC&#xff1a; Linux环境下&#xff0c;进程地址空间相互独立&#xff0c;每个进程各自有不同的用户地址空间。任何一个进程的全局变量在另一个进程中都看不到&#xff0c;所以进程和进程之间不能相互访问&#xff0c;要交换数据必须通过内核&#xff0c;在内核中开辟一块缓冲…

并发编程三大特性之可见性

一、什么是可见性&#xff1f; 可见性问题是基于CPU位置出现的&#xff0c;cpu处里速度非常快&#xff0c;相对CPU来说去主内存 获取数据这个事情太慢了&#xff0c;CPU就提供了 L1&#xff0c;L2&#xff0c;L3的三季缓存&#xff0c;每次去主内存拿完 数据后&#xff0c;数据…

MBTI职业性格测试:发现你的内在力量,探索职业新世界!

MBTI简介 MBTI是根据荣格的心理类型理论著成&#xff0c;已经成为权威的性格测试。 MBTI&#xff08;Myers-Briggs Type Indicator&#xff09;&#xff0c;是一种迫选型、自我报告式的性格评估测试&#xff0c;用以衡量和描述人们在获取信息、作出决策、对待生活等方面的心理…

【从零到一手撕脚手架 | 第五节】自定义命令行下载cli工具

【从零到一手撕脚手架 | 第五节】自定义命令行下载cli工具 Hello大家好我是⛄&#xff0c;之前我们已经成功搭建了一套Vue3的快速开发模板&#xff0c;提高我们搭建新项目的效率&#xff0c;但是当我们的模板逐渐增多&#xff0c;如果依然使用git clone的方式去下载模板较为繁琐…

使用LIKE进行模糊查询

查询包含字符‘e’的信息 % 代表不确定个数的字符&#xff08;零个或多个&#xff09; SELECT employee_id, first_name FROM employees WHERE first_name LIKE %e%; 查询以字符‘e’开头的字符 SELECT employee_id, first_name FROM employees WHERE first_name LIKE e%; _…

腾讯云2024年优惠券领取及使用常见问题

腾讯云作为国内领先的云计算服务提供商&#xff0c;经常会推出各种优惠活动&#xff0c;以此来吸引用户上云。其中&#xff0c;优惠券作为一种常见的促销方式&#xff0c;受到了众多用户的青睐。然而&#xff0c;在领取和使用优惠券的过程中&#xff0c;大家可能会遇到一些常见…

1.《C语言》—— [常见概念]

前言: C语言是学习编程的一门语言&#xff0c;C语言概念少&#xff0c;词汇少&#xff0c;包含了基本的编程元素&#xff0c;再后来的很多语言如&#xff08;C&#xff0c;Java&#xff09;等都参考了C语言&#xff0c;所以想要学好编程&#xff0c;C语言是必不可少的一门&…

77、WAF攻防——权限控制代码免杀异或运算变量覆盖混淆加密传参

文章目录 WAF规则webshell免杀变异 WAF规则 函数匹配 工具指纹 webshell免杀变异 php 传参带入 eval可以用assert来替换,assert也可以将字符串当作php代码执行漏洞 php 变量覆盖 php 加密 使用加密算法对php后门进行加密 php 异或运算 简化:无字符webshellP 无数字字母rc…

《米小圈上学记》——让孩子爱上阅读一点也不难!

阅读能力的培养是小学语文素质教育重要的组成部分&#xff0c;阅读能力的高低&#xff0c;直接关系到学生的理解能力、运用知识的能力以及表达能力的提升。提高小学生的阅读能力不仅关系到小学生语文素养的培养&#xff0c;而且对他们开阔视野、提高内涵、增加底蕴、放飞心灵有…

hibernate执行外部sql

开发背景 公司多年前项目&#xff0c;使用hibernate作为持久层&#xff0c;部分sql查询采用spring的JdbcTemplate&#xff0c;sql穿插在java代码中。因此&#xff0c;需要统一使用hibernate&#xff0c;并且sql部分需要类似Mybatis一样从文件中读取。由于引入Mybatis需要对项目…

哈希存节点,双dp数组存选和不选

小偷又发现了一个新的可行窃的地区。这个地区只有一个入口&#xff0c;我们称之为 root 。 除了 root 之外&#xff0c;每栋房子有且只有一个“父“房子与之相连。一番侦察之后&#xff0c;聪明的小偷意识到“这个地方的所有房屋的排列类似于一棵二叉树”。 如果 两个直接相连…

Linux:安装zabbix-agent被监控端(2)

本章是结合着上一篇文章的续作 Linux&#xff1a;部署搭建zabbix6&#xff08;1&#xff09;-CSDN博客https://blog.csdn.net/w14768855/article/details/137426966?spm1001.2014.3001.5501本章将在两台centos部署agent端&#xff0c;然后使用server进行连接监控 agent1 在1…

11、子串-滑动窗口最大值

题解&#xff1a; 双端队列是一种特殊的队列&#xff0c;允许你在队列的两端进行插入和删除操作。在滑动窗口问题中&#xff0c;我们使用它来存储可能是当前窗口最大值的元素的索引。 维护队列的顺序&#xff1a; 当新元素进入窗口时&#xff0c;我们将它与队列尾部的元素进…

RSA相关学习存档

什么是RSA&#xff0c;以及RSA算法&#xff1a; https://zhuanlan.zhihu.com/p/450180396 https://blog.csdn.net/m0_51607907/article/details/123884953 https://blog.csdn.net/firechungelaile/article/details/39974379 https://blog.csdn.net/lesczx/article/details/…

【LeetCode热题100】4. 寻找两个正序数组的中位数(二分)

一.题目要求 给定两个大小分别为 m 和 n 的正序&#xff08;从小到大&#xff09;数组 nums1 和 nums2。请你找出并返回这两个正序数组的 中位数 。 算法的时间复杂度应该为 O(log (mn)) 。 二.题目难度 困难 三.输入样例 示例 1&#xff1a; 输入&#xff1a;nums1 [1,3…

子集(迭代)(leetcode 78)

核心逻辑&#xff1a; 根据子数组包含的元素个数迭代&#xff1a; 现有子集的基础上通过添加这个新元素来翻倍子集的数量 f(n)2f(n−1) vector<vector<int>> subsets(vector<int>& nums) {vector<vector<int>> ans;int i,j,k;ans.p…

《科技创业月刊》是什么级别的期刊?是正规期刊吗?能评职称吗?

问题解答&#xff1a;问&#xff1a;《科技创业月刊》是什么级别的刊物&#xff1f; 答&#xff1a;省级&#xff0c;主管单位&#xff1a; 湖北省科学技术厅 &#xff1b;主办单位&#xff1a;湖北省科技信息研究院 问&#xff1a;《科技创业月刊》是c刊吗&#xff1f; 答&…