bitset,动态规划
小红组比赛题目大意每组数据各选一个相加后与目标值MAXSUM相减的绝对值最小思路让所有不超过目标值的s分别与下组的每个数据相加把不超过目标值的s用bitset标记为1在遍历S中遇到可访问的就让这个可访问的s与下一组的每个数据相加直到每组数据都遍历过此时从0-MAXSUM的s有被标记过的dp取Abs中的最小值bitset函数/*dp5005dp;bitset5005 tmp;dp.set(x); // 第x位 1dp.reset(x); // 第x位 0dp.flip(x); // 第x位取反dp[x] // 获取第x位的值0或1dp.count() // 统计一共有多少个1*/#includebits/stdc.h using namespace std; #define int long long #define endl \n void solve() { int n, m; cin n m; vectorvectorintgroup(n); // 读取n组数据每组m个数字 for(int i0;in;i) { for(int j0;jm;j) { int x; cin x; group[i].push_back(x); } } int target; cin target; const int MAXSUM 5000; bitset5005 dp; dp.set(0); for(auto a:group){ bitset5005tmp; //遍历已经存在的总和s /*for(int s0;sMAXSUM;s){ //s存在 if(dp[s]){ //在s的基础上加新一组的每个值 for(auto num:a){ //在不超过目标的情况下加入新的总和 if(snumMAXSUM){ //把这个总和标记为可访问 tmp.set(snum); } } } }*/ for(int num : g) { tmp | dp num; } //在本组数据处理过后把可访问的S赋给dp, //让下一组的每组数据和可访问的s分别相加 dptmp; } int ansINT_MAX; //在所有可访问的s中取得abs中的最小值 for(int s0;sMAXSUM;s){ if(dp[s]){ ansmin(ans,abs(s-target)); } } coutansendl; } signed main() { ios::sync_with_stdio(0);cin.tie(0); solve(); return 0; }简单瞎搞题题目大意n个【l,r】中每个中取出一个数s数的平方问用多少个不同的s思路 用bitsetMAX_SUM 1 dp;下标标记s是否存在在没有取值的时候s0,dp.set(0)下标为0的位置存在之后用存在的s加上每组的【l,r】间的每个数的平方用bitsetMAX_SUM 1 tmp;存这组【l,r】内的新s,把dptmp;(动态规划)dp与s的关系下标0 1 2 3 4 5 6 7 8 ... dp 0 0 0 1 0 0 0 0 0 ...​ dp 4​ 下标0 1 2 3 4 5 6 7 8 …​ val0 0 0 0 0 0 0 1 0 …第 1 轮 i0处理 [1,2]tmp 初始全 0x1v1tmp | dp 1dp1 → 下标 011 置 1tmp{1}x2v4tmp | dp 4dp4 → 下标 044 置 1tmp{1,4}dp tmp✅当前可行平方和(\boldsymbol{{1,4}})第 2 轮 i1处理 [2,3]v4,9tmp 初始全 0x2v4dp 9旧可行 {1,4} → 145448 → {5,8}tmp {5,8}x3v9dp 9旧可行 {1,4} → 19104913 → {10,13}→ tmp{5,8,10,13}dp tmp✅当前可行平方和(\boldsymbol{{5,8,10,13}})#includebits/stdc.h using namespace std; #define int long long #define endl \n const int MAX_SUM 100 * 100 * 100; // 1000000 void solve() { int n; cin n; vectorpairint,int seg(n); for(int i0;in;i) { int l,r; cin l r; seg[i] {l,r}; } vectorbool dp(MAX_SUM 1, false); dp[0] true; for(auto p : seg) { int L p.first, R p.second; vectorbool tmp(MAX_SUM 1, false); for(int s0;sMAX_SUM;s) { if(dp[s]) { for(int x L; x R; x) { int val x * x; if(s val MAX_SUM) tmp[s val] true; } } } dp.swap(tmp); } int ans 0; for(int s0;sMAX_SUM;s) if(dp[s]) ans; cout ans endl; } signed main(){ ios::sync_with_stdio(0);cin.tie(0); solve(); return 0; } #includebits/stdc.h using namespace std; #define int long long #define endl \n const int MAX_SUM 1000000; void solve() { int n; cin n; bitsetMAX_SUM 1 dp; dp.set(0); for(int i0;in;i) { int l,r; cin l r; bitsetMAX_SUM 1 tmp; for(int xl;xr;x) { int v x*x; // | 合并进 tmp自动去重。 // 旧方案全部 v 得到的新可行集合 tmp | dp v; } dp tmp; } cout dp.count() endl; } signed main(){ ios::sync_with_stdio(0);cin.tie(0); solve(); return 0; }

相关新闻

灭蚊灯买什么牌子好用?内行人揭秘热门灭蚊灯排名前十名品牌,必看!

灭蚊灯买什么牌子好用?内行人揭秘热门灭蚊灯排名前十名品牌,必看!

​每年夏天,蚊子引发的健康问题都会登上新闻——登革热、乙脑等蚊媒传染病频发,轻则叮咬瘙痒,重则威胁生命安全。可市面上灭蚊器五花八门,不少商家打着“物理灭蚊”“全覆盖无死角”的旗号,实则是偷工减料的不专业产品…

2026/9/23 21:01:57 阅读更多 →
企业级影视合成架构优化:Nuke Survival Toolkit 290+专业插件性能突破解决方案

企业级影视合成架构优化:Nuke Survival Toolkit 290+专业插件性能突破解决方案

企业级影视合成架构优化:Nuke Survival Toolkit 290专业插件性能突破解决方案 【免费下载链接】NukeSurvivalToolkit_publicRelease public version of the nuke survival toolkit 项目地址: https://gitcode.com/gh_mirrors/nu/NukeSurvivalToolkit_publicReleas…

2026/9/30 8:53:45 阅读更多 →
AI多语言翻译工具:跨境电商说明书高效解决方案

AI多语言翻译工具:跨境电商说明书高效解决方案

1. 项目背景与核心价值做跨境电商的朋友们应该都深有体会:产品说明书的多语言翻译是个让人头疼的大问题。传统翻译方式要么成本高得吓人,要么排版全乱套,最后还得花大量时间手动调整格式。最近我在实际业务中测试了一款AI驱动的多语言翻译工具…

2026/9/30 19:32:58 阅读更多 →

最新新闻

具身智能中的无线技术——无线线束1

具身智能中的无线技术——无线线束1

无线线束是具身智能领域的颠覆性技术&#xff0c;通过用无线电波替代机器人内部的信号线&#xff0c;解决线缆易断、重量大、灵活性受限等问题。其核心在于实现低时延&#xff08;<20μs&#xff09;、高可靠性、抗干扰的无线通信&#xff0c;已在灵巧手、触觉皮肤和电池管理…

2026/10/12 3:21:58 阅读更多 →
Kun 轨迹视图对齐 DeepSeek Harness:Schema v2 投影、密集台账与悬浮 Composer 的实现拆解

Kun 轨迹视图对齐 DeepSeek Harness:Schema v2 投影、密集台账与悬浮 Composer 的实现拆解

人工智能AI Agent自主智能体桌面应用MCP Clients 【免费下载链接】Kun Local-first AI agent workspace for coding, writing, design, research, and automation — one runtime for desktop GUI and TUI. 项目地址&#xff1a; https://gitcode.com/gh_mirrors/de/Kun 点击查…

2026/10/12 3:21:58 阅读更多 →
纯Java打造企业级Agent Harness:工具治理与上下文管理的工程实践

纯Java打造企业级Agent Harness:工具治理与上下文管理的工程实践

面对群里几乎一边倒的“Agent 项目不选 Python 等于自找麻烦”的声音&#xff0c;我们组还是在一个面向多家企业客户的系统改造项目里&#xff0c;用纯 Java 搭了一个企业级 Agent Harness 平台&#xff0c;代号 BizBuddy。这篇文章想把立项时算的账、Harness 与 Agent 的边界划…

2026/10/12 3:21:58 阅读更多 →
Simple Live:一个入口看虎牙、斗鱼、Bilibili、抖音的开源直播聚合应用

Simple Live:一个入口看虎牙、斗鱼、Bilibili、抖音的开源直播聚合应用

Simple Live&#xff1a;一个入口看虎牙、斗鱼、Bilibili、抖音的开源直播聚合应用 【免费下载链接】dart_simple_live 简简单单的看直播 项目地址: https://gitcode.com/GitHub_Trending/da/dart_simple_live 你追的主播&#xff0c;上午在 B 站开播、晚上去虎牙&#…

2026/10/12 3:21:58 阅读更多 →
Agent OS Discover Standards 实战指南:把代码库隐性知识沉淀为可检索的工程规范

Agent OS Discover Standards 实战指南:把代码库隐性知识沉淀为可检索的工程规范

AI AgentAgent 工作流开发工具 【免费下载链接】agent-os Agent OS is a system for injecting your codebase standards and writing better specs for spec-driven development. 项目地址&#xff1a; https://gitcode.com/gh_mirrors/agen/agent-os 点击查看 免费下载 Agen…

2026/10/12 3:21:58 阅读更多 →
Apache Beam 依赖管理实践指南:从依赖冲突到升级政策的完整解读

Apache Beam 依赖管理实践指南:从依赖冲突到升级政策的完整解读

批处理流处理大数据 【免费下载链接】beam Apache Beam is a unified programming model for Batch and Streaming data processing. 项目地址&#xff1a; https://gitcode.com/gh_mirrors/beam15/beam 点击查看 免费下载 导读 本文以 Apache Beam 官方《Dependencies Guide…

2026/10/12 3:20:57 阅读更多 →

日新闻

复古胶片颗粒感噪点合成器:Canvas ImageData 像素高斯杂色注入算法

复古胶片颗粒感噪点合成器:Canvas ImageData 像素高斯杂色注入算法

在数码相机、高清显示屏与现代矢量图形技术高度发达的今天&#xff0c;画面可以做到绝对的锐利、平滑与无瑕。然而&#xff0c;当一张秋日手账插画或拍立得照片过于“平整无瑕”时&#xff0c;往往会散发出一种冰冷生硬的“数码塑料感&#xff08;Digital Plasticity&#xff0…

2026/10/12 0:00:59 阅读更多 →
活字印刷古籍线装排版:Canvas 竖排文字与栏线自适应算法

活字印刷古籍线装排版:Canvas 竖排文字与栏线自适应算法

在现代网页与移动端设计中&#xff0c;横排&#xff08;Horizontal Layout&#xff09;早已经成为了绝对的主流。然而&#xff0c;当我们翻开泛黄的线装古籍、宋版木刻诗集&#xff0c;或是欣赏一张茶道雅集的手写便签时&#xff0c;那种**自上而下纵向书写、自右向左逐列铺展&…

2026/10/12 0:00:59 阅读更多 →
周日晚间的“精神松绑减震器”:无压力情绪倾倒箱与温和轻声陪伴

周日晚间的“精神松绑减震器”:无压力情绪倾倒箱与温和轻声陪伴

每到周日的晚上八点到十点&#xff0c;很多人心里都会悄悄亮起一盏警示灯。 在心理学上&#xff0c;这种现象有一个专门的称谓——“周日夜晚焦虑症&#xff08;Sunday Scaries&#xff09;”。明天又是周一&#xff0c;闹钟又要重新在七点响彻卧房&#xff1b;脑海里仿佛有一个…

2026/10/12 0:00:59 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介&#xff1a;基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码&#xff0c;面向计算机相关专业课程设计与期末大作业学生&#xff0c;以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程&#xff0c;…

2026/10/12 0:16:30 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程&#xff1a;键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化&#xff0c;十个新手有八个栽在"往输入框里填东西"这件事上&#xff1a;要么填不进去&#xff0c;要么填了一半&#xff0c;要么直接把原来内容追加在后面。这背后的根因&…

2026/10/12 0:16:38 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程&#xff1a;阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀&#xff1a;什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面&#xff0c;跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/12 0:16:43 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 10:45:37 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 14:36:53 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 14:36:54 阅读更多 →