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

周测复盘【前缀和and差分】

其实存了三个草稿没发因为题解半路解不出来了。花了四十分钟搞三个平台关联最后一道题还是没来得及交上哈哈OK直接进入正题题目AAtcoder Trifecta题目翻译编号为1到N的N匹马进行了一场比赛所有马匹同时起跑。第i匹马从起点到终点用时Ti​秒找出获得第一名、第二名。和第三名的马匹的编号保证所有的T。i​都互不相同第一反应就是排序c语言中是用struct来储存id和timec中第一想法是二维vector哼哼就是喜欢用vector直接用sort以下是我的代码(AC)#include bits/stdc.h using namespace std; bool cmp(pairint, int a, pairint, int b) { return a.second b.second; } int main() { int n; cin n; vectorpairint, int time(n); for (int i 0; i n; i) { time[i].first i 1; int x; cin x; time[i].second x; } sort(time.begin(), time.end(), cmp); if (n 3) { cout time[0].first time[1].first time[2].first; //用printf更方便哈 } return 0; }这个是老师的题解解法一三层循环int pos1,pos2,pos3; int minn1,minn2,minn3; minn1minn2minn3INF; for(int i1;in;i) { if(minn1t[i]) { minn1t[i]; pos1i; } } for(int i1;in;i) { if(ipos1) continue; if(minn2t[i]) { minn2t[i]; pos2i; } } for(int i1;in;i) { if(ipos1||ipos2) continue; if(minn3t[i]) { minn3t[i]; pos3i; } } printf(%d %d %d\n,pos1,pos2,pos3);解法二一样sort但用的是结构体struct node { int id,val; }t[N]; bool mycmp(node x,node y) { return x.valy.val; } //老师的均为不完整代码 scanf(%d,n); for(int i1;in;i) { int x; scanf(%d,x); t[i]{i,x};//欸其实我是第一次见这个写法哈哈我一直是分开写学之学之 } sort(t1,t1n,mycmp); printf(%d %d %d\n,t[1].id,t[2].id,t[3].id);题目BluoguU69096 前缀和的逆经典前缀和第一反应是按照公式倒推然后根据输入输出调整一些参数哈哈老师的题解里还包含了差分这是道前缀和数组求差分以下是我的代码(AC)#includebits/stdc.h using namespace std; int a[100],b[100];//经常看到大佬喜欢把这种写到全局学之学之 int main() { int n; cinn; for(int i0;in;i) { cina[i]; } for(int i0;in;i) { if(i0) { b[i]a[i]; continue; } b[i]a[i]-a[i-1]; } for(int i0;in;i) { coutb[i] ; } coutendl; return 0; }这个是老师的题解scanf(%d,n); for(int i1;in;i) scanf(%d,a[i]); for(int i1;in;i) printf(%d ,a[i]-a[i-1]);题目CluoguP3397 地毯诶不知为什么第一个想法是哈希表之前刷到过好像我是用暴力枚举来做的原来题型是前缀和和差分哈哈以下是我的代码(第一次TLE了第二次提交AC了emmm)#include bits/stdc.h using namespace std; int pos[1000][1000] {0}; int main() { int n, m; cin n m; for (int i 0; i m; i) { int x1, y1, x2, y2; cin x1 y1 x2 y2; for (int x x1; x x2; x) { for (int y y1; y y2; y) { pos[x - 1][y - 1]; } } } for (int i 0; i n; i) { for (int j 0; j n; j) { printf(%d , pos[i][j]); } printf(\n); } return 0; }第一次TLE的原因是题目看错了设置成int pos[50][50] {0};在写的时候尝试用了while(cinxy)之前在一个题解中看到的但是发现在本地编译器无法停止输入豆老师帮忙分析的弊端while(cin x y) 是 C 里非常常用的写法但它确实有几个明显弊端尤其在处理不规范输入、异常数据时很容易出问题。1. 无法区分“正常结束”和“输入错误”- 循环退出只有两种情况1. 读到文件末尾EOF2. 输入类型不匹配比如输入字母- 程序不知道到底是正常结束还是输错了。2. 类型不匹配会直接导致流失效例如你定义 int x,y 却输入abc 123- cin 进入失败状态failbit- 循环直接退出- 后面所有 cin 都会失效除非手动 cin.clear()3. 无法处理多余/非法字符比如输入10 20 extra words- 读完 10 20 后后面的字符串留在输入缓冲区- 下次读会继续读到这些垃圾数据4. 不能自定义分隔符- 只能按**空白空格/换行/Tab**分割- 想按逗号、冒号等分割时完全不适用5. 无法精确控制输入行数- 换行和空格对它是一样的- 想一行一行严格处理时不适用6. 用户体验差输错一个字符就直接退出没有重试机会。更健壮的写法思路string line; while (getline(cin, line)) { // 按行解析 // 出错可以 clear、重试、提示 }这是老师的题解scanf(%d%d,n,m); for(int i1;im;i) { int x1,y1,x2,y2; scanf(%d%d%d%d,x1,y1,x2,y2); a[x1][y1]; a[x21][y21]; a[x1][y21]--; a[x21][y1]--; } for(int i1;in;i) { for(int j1;jn;j) { a[i][j]a[i-1][j]a[i][j-1]-a[i-1][j-1]; printf(%d ,a[i][j]); } puts(); }题目DluoguP1387 最大正方形第一想法暴力枚举但感觉很容易TLE但是我看网上有人说靠暴力可以拿到两百分๑ᵒᯅᵒ๑然后暴力枚举写一段之后发现走不通(就是自己想不出怎么让电脑判断这是块正方形啦)然后从数学方面思考行列的规律通过公式来更新边长本来用了新数组来储存正方形数组中间依旧出问题呵呵直接在矩形数组中修改反正只遍历一次这算一种矩阵吗矩阵我要新写几个帖子链接后面再放以下是我的代码#includebits/stdc.h using namespace std; int main() { int n,m; cinnm; int a0; vectorvectorintv(n, vectorint(m, 0)); for (int i 0; i n; i) { for (int j 0; j m; j) { cinv[i][j]; } } for (int i 0; i n; i) { for (int j 0; j m; j) { if (v[i][j] 1) { if (i 0 j 0) { v[i][j] min(min(v[i-1][j], v[i][j-1]), v[i-1][j-1]) 1; //超级关键一步 } if (v[i][j] a) { a v[i][j]; } } } } coutaendl; return 0; }这是老师的题解注二维前缀和三重循环前两重枚举正方形左上角的坐标第三重枚举正方形的边长然后判断正方形内数值之和是否等于面积即可scanf(%d%d,n,m); for(int i1;in;i) { for(int j1;jm;j) { scanf(%d,a[i][j]); a[i][j]a[i-1][j]a[i][j-1]-a[i-1][j-1]; } } for(int i1;in;i) { for(int j1;jm;j) { for(int k1;kmin(n-i1,m-j1);k) { int x1i, y1j, x2ik-1, y2jk-1; int sum(a[x2][y2]-a[x1-1][y2]-a[x2][y1-1]a[x1-1][y1-1]); if(sumk*k) ansmax(ans,k); } } } printf(%d\n,ans);题目EAtcoder Swap and Range Sumatcoder好烦òᆺó能不能保存一下我的代码当时做完我的代码挺短的我记得挺惊讶的跟第二题差不多的长度好像感觉我的逻辑过于简单了(所以这就是没AC的原因吗…)一开始没用前缀和TLE了重写一遍gogogo以下是我的代码#include bits/stdc.h using namespace std; int main() { int n, q; cin n q; vectorint a(n 1); vectorint pre(n 1, 0); for (int i 1; i n; i) { cin a[i]; pre[i] pre[i - 1] a[i];//构造前缀和数组 } for (int i 0; i q; i) { int choice; cin choice; if (choice 1) { int x; cin x; swap(a[x], a[x 1]); for (int j x; j n; j) { pre[j] pre[j - 1] a[j]; } } else if (choice 2) { int l, r; cin l r; cout pre[r] - pre[l - 1] endl; } } return 0; }这是老师的题解while(q--) { int k,x,l,r; scanf(%d,k); if(k1) { scanf(%d,x); s[x]-a[x]; s[x]a[x1]; swap(a[x],a[x1]); } else { scanf(%d%d,l,r); printf(%d\n,s[r]-s[l-1]); } }题目FAtcoder Many Repunit Sum上次看到有个题解用了#define Int long long;本来想用用我本地编译器依旧不允许全部写完之后发现那个特别长的例子无法通过超出了long long的存储范围然后诶那就用字符串呗从头开始但是时间没多少了跟着教程把前几道题交了还是没赶上写完这题小妹妹你字符串很差劲哦字符串也要单独写几篇以下是当时自己写的long long的代码过于简单了是吧哈哈#includebits/stdc.h using namespace std; int main() { int n; cinn; vectorinta(n); for(int i0;in;i) { cina[i]; } long long sum0; vectorlong longb(n); for(int i0;in;i) { long long p1; for(int j0;ja[i];j) { b[i]p; p*10; } sumb[i]; } coutsumendl; return 0; }(自己尝试写的字符串代码没AC俺对字符串目前还不是很熟代码缺胳膊少腿的让D老师帮忙它也没AC ⦁֊⦁꧞)这是老师的题解scanf(%d,n); for(int i1;in;i) { int x; scanf(%d,x); mmax(m,x); d[x1]--; d[1]; }for(int i1;im1;i) d[i]d[i-1];然后从低到高依次进位即可。最后按位输出最终数字。for(int i1;im;i) { if(d[i]10) d[i1]d[i]/10,d[i]%10; if(imd[i1]0) m; }for(int im;i1;i--) printf(%d,d[i]); puts();这道题是真的学到东西了老师用的差分对B数组区间加法就该想到差分的啊......下次详细分析再编辑今天END!

相关文章:

周测复盘【前缀和and差分】

其实存了三个草稿没发,因为题解半路解不出来了。 花了四十分钟搞三个平台关联,最后一道题还是没来得及交上哈哈,OK直接进入正题 题目A Atcoder Trifecta 题目翻译: 编号为1到N的N匹马进行了一场比赛 所有马匹同时起跑&#x…...

019、FreeRTOS-MPU:内存保护单元支持

019、FreeRTOS-MPU:内存保护单元支持 从一次深夜调试说起 上周三凌晨两点,产线测试板突然重启。日志显示任务A写入了任务B的数据区,导致MPU触发MemManage异常。硬件同事坚持“MPU配置没问题”,软件同事咬定“代码逻辑没问题”——这种场景太熟悉了。最终发现是任务栈溢出…...

Meta推出由高薪超级智能实验室研发的全新AI模型

Meta于本周三正式发布了其最新人工智能模型,这也是该公司组建一支高薪团队以在AI赛道上与竞争对手展开较量后推出的首个重磅成果。这款名为Muse Spark的新模型由Meta超级智能实验室打造。该实验室汇聚了一批来自各大AI公司的顶尖人才,于去年正式成立&…...

Phi-4-Reasoning-Vision开源大模型:支持ONNX Runtime加速部署

Phi-4-Reasoning-Vision开源大模型:支持ONNX Runtime加速部署 1. 项目概述 Phi-4-Reasoning-Vision是一款基于微软Phi-4-reasoning-vision-15B多模态大模型开发的高性能推理工具,专为双卡RTX 4090环境优化。这个工具严格遵循官方SYSTEM PROMPT规范&…...

Meta携全新模型Muse Spark重返AI竞争赛道

Meta超级智能实验室正式发布旗下首款模型,这也是自马克扎克伯格斥巨资对公司AI体系进行全面改革以来的重要里程碑。该模型名为Muse Spark,目前已接入美国市场的Meta AI应用程序及Meta AI官网。据官方公告,未来数周内,Muse Spark还…...

电脑无法升级Windows 11?ChromeOS Flex是个不错的替代方案

谷歌再次提醒用户:即便你使用的是PC,也不必被微软的操作系统所束缚。事实上,这家科技巨头正在让用户切换到ChromeOS Flex变得前所未有的简单。谷歌近期与二手电子产品公司Back Market达成新合作,现已推出ChromeOS Flex USB安装套件…...

突破语言壁垒:FanControl本地化引擎深度配置指南

突破语言壁垒:FanControl本地化引擎深度配置指南 【免费下载链接】FanControl.Releases This is the release repository for Fan Control, a highly customizable fan controlling software for Windows. 项目地址: https://gitcode.com/GitHub_Trending/fa/FanC…...

周鸿祎西安交大演讲:AI时代青年的机遇与挑战

【赓续“西迁精神”,驾驭AI重塑竞争力】近日,西安交通大学迎来建校130周年暨西迁70周年纪念大会,360集团创始人、西安交大杰出校友周鸿祎重返母校发表主旨演讲。他勉励青年学子赓续“西迁精神”,坚守“解决真问题”的底色。在人工…...

GoCodingInMyWay嘶

一、什么是 Q 饱和运算? 1. 核心痛点:普通运算的 “数值回绕” 普通算术运算(如 ADD/SUB)溢出时,数值会按补码规则 “回绕”,导致结果完全错误: 示例:int8_t 类型最大值 127 1 → 结…...

YOLO-Master 与 YOLO 开始嫡

AI Agent 时代的沙箱需求 从 Copilot 到 Agent:执行能力的质变 在生成式 AI 的早期阶段,应用主要以“Copilot”形式存在,AI 仅作为辅助生成建议。然而,随着 AutoGPT、BabyAGI 以及 OpenAI Code Interpreter(现为 Advan…...

2026.04.07随记

1、PyTorch1、dir(模块):查看任意模块的方法2、X.sum(0, keepdimTrue):keepdimTrue保留维度X torch.tensor([[1.0, 2.0, 3.0], [4.0, 5.0, 6.0]]) # (2,3) X.sum(0, keepdimTrue), X.sum(1, keepdimTrue)…...

从零构建大模型--实操--搭建python环境

区分pip conda pip pip Python 官方自带的安装工具 你只要装了 Python,就自动自带 pip,不需要额外装。 作用: 安装各种 Python 库:pip install 库名卸载、更新、查看已安装的库 它是纯 Python 官方工具,只管 Python 相…...

MBR扩展分区的结构分析

由于MBR仅仅为分区表保留了64字节的存储空间,而每个分区的参数占据16字节,所以MBR扇区中总计可以存储4个分区表表项的数据。对于实际情况,4个分区不能满足需求,当超过四个分区时,系统会自动将第四个分区变成扩展分区&a…...

跨境电商Shopify 的对接开发

在 2026 年的跨境电商环境中,Shopify 的对接开发已不再仅仅是“铺货”和“改模板”,而是向高度自动化(AI-Driven)、无头电商(Headless)以及全球本地化(Hyper-Localization)深度演进。…...

测试实录Android 16 平板首板测试实录:857条用例,101个FAIL,这些坑你踩过吗?

...

反向跟单为什么总以失败告终?这正是大多数人转向复制跟单的真相

你知道什么是反向跟单吗?简单说,就是找到一批持续亏损的交易者,用专业跟单软件跟踪他们的操作,然后与他们做完全相反的交易——他们做多,你就做空;他们做空,你就做多。只要他们亏损多少&#xf…...

高效备份QQ空间历史数据:GetQzonehistory的本地化解决方案

高效备份QQ空间历史数据:GetQzonehistory的本地化解决方案 【免费下载链接】GetQzonehistory 获取QQ空间发布的历史说说 项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory 你是否曾担心多年积累的QQ空间说说会因账号异常或平台政策调整而永…...

BetterGenshinImpact多开功能终极指南:同时管理多个原神账号的完整方案

BetterGenshinImpact多开功能终极指南:同时管理多个原神账号的完整方案 【免费下载链接】better-genshin-impact 📦BetterGI 更好的原神 - 自动拾取 | 自动剧情 | 全自动钓鱼(AI) | 全自动七圣召唤 | 自动伐木 | 自动刷本 | 自动采集/挖矿/锄地 | 一条龙…...

2025届必备的AI学术网站解析与推荐

Ai论文网站排名(开题报告、文献综述、降aigc率、降重综合对比) TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 于内容创作里,要是过度去依赖AIGC,那么便兴许会致使文本欠缺人性化的…...

3个技术维度重构教育评价:OCRAutoScore的智能阅卷革新

3个技术维度重构教育评价:OCRAutoScore的智能阅卷革新 【免费下载链接】OCRAutoScore OCR自动化阅卷项目 项目地址: https://gitcode.com/gh_mirrors/oc/OCRAutoScore 教育评价领域正面临数字化转型的关键期,传统阅卷模式在大规模考试场景下逐渐暴…...

看懂 Dependency Analyzer:从 SQL 依赖到性能复杂度,系统拆解 ABAP CDS 视图的隐藏结构

在做 ABAP CDS 建模时,很多开发者都会遇到一种很典型的困惑:表面上看,当前这个 CDS 视图只是从几个字段里做了投影,代码也不算长;可一到激活、预览数据、做 OData 暴露,甚至进入 RAP 场景以后,系统表现却突然变得复杂,查询变慢,层级难以理解,出了问题也很难定位。造成…...

2026届最火的五大降重复率神器横评

Ai论文网站排名(开题报告、文献综述、降aigc率、降重综合对比) TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 旨在降低文本机器生成特征的降AI工具,是为了规避自动化检测模型的识别&#xff0…...

第8章 流程控制-8.3 循环结构

循环结构就是让程序不断地重复执行同一段代码。Python中的循环结构有3种,分别是while循环、for循环和循环嵌套。8.3.1 while循环while循环可以通过while语句和while…else语句实现。1.while语句while语句首先会判断其条件表达式是否成立,如果条件表达式成…...

BiliTools:重构B站资源管理的跨平台工具箱

BiliTools:重构B站资源管理的跨平台工具箱 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools 价值定位&…...

6步构建企业级远程桌面系统:基于UltraVNC的完整部署指南

6步构建企业级远程桌面系统:基于UltraVNC的完整部署指南 【免费下载链接】UltraVNC 👁️ UltraVNC Server, UltraVNC Viewer, UltraVNC Repeater and UltraVNC SC | Official repository: https://github.com/ultravnc/UltraVNC 项目地址: https://git…...

5分钟解锁你的首个Gemini AI智能体:全栈开发终极指南

5分钟解锁你的首个Gemini AI智能体:全栈开发终极指南 【免费下载链接】gemini-fullstack-langgraph-quickstart Get started with building Fullstack Agents using Gemini 2.5 and LangGraph 项目地址: https://gitcode.com/gh_mirrors/ge/gemini-fullstack-lang…...

Element Plus访问提速实战:突破跨境网络限制的三大解决方案

Element Plus访问提速实战:突破跨境网络限制的三大解决方案 【免费下载链接】element-plus 🎉 A Vue.js 3 UI Library made by Element team 项目地址: https://gitcode.com/GitHub_Trending/el/element-plus Element Plus作为Vue 3生态中最受欢迎…...

GTE-Base-ZH赋能Java应用:SpringBoot集成与语义搜索实战

GTE-Base-ZH赋能Java应用:SpringBoot集成与语义搜索实战 最近在做一个电商后台的搜索功能升级,用户反馈说,用关键词搜商品经常找不到想要的东西。比如用户搜“适合夏天穿的轻薄外套”,传统的搜索可能只匹配到“外套”&#xff0c…...

收藏!Java后端裁员潮下,程序员(小白必看)靠大模型破局翻身

凌晨一点半,手机屏幕突然亮起,是做Java后端开发的发小发来的消息,字里行间全是慌乱与不甘:“刚收到公司裁员通知,名单已经定死了,我真的懵了——部门里干了五年的资深老程都没保住,我这三年经验…...

如何用DoubleQoLMod在30分钟内让你的工业帝国效率翻倍?

如何用DoubleQoLMod在30分钟内让你的工业帝国效率翻倍? 【免费下载链接】DoubleQoLMod-zh 项目地址: https://gitcode.com/gh_mirrors/do/DoubleQoLMod-zh 想象一下,你的工厂正在全速运转,但资源采集却像蜗牛一样缓慢;你的…...