当前位置: 首页 > news >正文

CF1798D Shocking Arrangement 题解

参考了扶苏的证明,看起来很直觉,证明有点不明觉厉。

我们考虑这样一种构造,考虑增量,直接维护当前答案序列的和 \(s\)

  • \(s \ge 0\) 时,随便选一个 \(x(x \le 0)\) 放到序列末尾。
  • \(s \le 0\) 时,随便选一个 \(x(x \ge 0)\) 放到序列末尾。

证明是这样的,因为我们插入的都是与 \(s\) 异号的数,那么显然有 \(\min_{i=1}^n a_i < s < \max_{i=1}^n a_i\),再考虑所有区间的和,在对序列做前缀和之后,都是两个前缀和相减,即 \(s_r - s_l\) 的形式。

那么,因为 \(\forall s_r < \max_{i=1}^n a_i\),并且 \(\forall s_l > min_{i=1}^n a_i\),那么将两式相减,得到 \(|s_r - s_l| < \max - \min\),这里需要一点分讨,读者自证不难。

考虑无解,全 \(0\) 序列显然无解,充分性显然。必要性通过上面的构造性证明,易得只要序列存在任意一个非 \(0\) 数,就能构造出答案。

// 如果命运对你缄默, 那就活给他看。
#pragma GCC optimize(1)
#pragma GCC optimize(2)
#pragma GCC optimize(3)
#pragma GCC optimize("Ofast", "inline", "-ffast-math")
#pragma GCC target("avx,sse2,sse3,sse4,mmx")
#include <bits/stdc++.h>
using namespace std;
typedef long long LL; 
// #define int LL
const int maxn = 3e5 + 10;
vector<int>ans;
int a[maxn], n;
inline void ed() {cout << "No\n";
}
inline void solve() {cin >> n;queue<int>q[2];  for(int i = 1; i <= n; ++ i) {cin >> a[i];q[a[i] >= 0].emplace(a[i]); }if(!*max_element(a + 1, a + 1 + n)) return cout << "No\n", void();LL s = 0;vector<int>ans;while(ans.size() < n) {int x; if(q[s < 0].empty()) x = q[s >= 0].front(), q[s >= 0].pop();else x = q[s < 0].front(), q[s < 0].pop();s += x, ans.emplace_back(x); } cout << "Yes\n";for(int x : ans) cout << x << ' '; cout << '\n'; 
}
signed main() {// freopen(".in", "r", stdin);// freopen(".out", "w", stdout);ios :: sync_with_stdio(false);cin.tie(0), cout.tie(0);int T;cin >> T;while(T -- ) solve();return 0;
}
http://www.gsyq.cn/news/32637.html

相关文章:

  • P11994 [JOIST 2025] 外郎糕 题解
  • 告别手动上传!10款自动同步本地文件夹的网盘深度评测
  • P7914 [CSP-S 2021] 括号序列
  • C#领域驱动设计在 ERP 项目中的应用设计
  • 逆合成孔径雷达(ISAR)成像中的包络对齐和相位补偿算法MATLAB实现
  • 2025年锌铝镁桥架产品行业推荐与洞察
  • 2025 年德州清水混凝土修补,德州仿清水混凝土修补,德州外墙仿清水混凝土修补公司最新推荐,聚焦资质、案例、售后的五家企业深度解读
  • 万字详解:混元大模型+GraphRAG+知识图谱实现永久记忆的专属AI伴侣 - 指南
  • ansible init 初始化实例
  • 详细分析Logback日志过大 - 教程
  • 解析某省零解赛题
  • 2025 年 10 月天河区台历印刷,天河区台历印刷设计公司最新推荐,聚焦资质、案例、售后的五家机构深度解读
  • 2025 年 10 月广州画册印刷制作,广州公司画册印刷,广州宣传画册印刷,广州画册印刷设计厂家最新推荐,聚焦资质、案例、售后的五家机构深度解读
  • 本土化代码托管平台崛起:Gitee如何重塑国内开发者生态
  • 2025年10月网上兼职赚钱正规平台推荐:高佣号卡分销排行榜
  • 2025 年纸护角厂家最新推荐榜,技术实力与市场口碑深度解析防撞 / 加硬 / 蜂窝纸护角 / 纸护角厂家推荐
  • 2025年10月烤火炉推荐:知名榜单全维度选择方案
  • 2025年10月烤火炉推荐:主流品牌口碑排行榜与避坑指南
  • 如何理解Java中的并发?
  • ElasticSearch基本指令
  • 2025 年污水离心泵,耐腐蚀离心泵,杂质离心泵,卧式离心泵厂家最新推荐,聚焦资质、案例、售后的五家机构深度解读
  • 2025信创浪潮下,ITSM 平台选型指南:国产方案如何选对 “运维服务引擎”
  • 2025 年长沙美食餐厅最新推荐榜,食材溯源与管理创新双维度下的品质品牌解析
  • 2025年新疆电线电缆厂家综合实力TOP3排行榜:耐火电缆/矿用电缆/高温电缆源头厂家精选。
  • 2025年PPH管材厂家权威推荐榜单:抗冲击性管材/低导热性管材/环保性管材源头厂家精选
  • 完整教程:macOS/Linux ClaudeCode 安装指南及 Claude Sonnet 4.5 介绍
  • 大会回顾:不止于 “智能”!详解Data+AI 如何赋能企业决策与效率升级
  • 2025 年北京湖南菜餐厅最新推荐榜,食材溯源与烹饪实力及市场口碑深度解析
  • 2025 年铝塑膜源头厂家最新推荐榜,技术实力与市场口碑深度解析,覆盖多场景包装需求真空包装 / 出口海运 / 导轨包装 / 电气包装 / 镀铝编织铝塑膜公司推荐
  • 高性能 低门槛|H200 GPU 正式上线 OpenCSG 社区和三峡传神社区!