新闻详情

新闻详情

首页 / 资讯中心 / 详情

2025HAUE新生周赛六题解

发布时间:2026/9/29 8:44:47来源:尧图网络
2025HAUE新生周赛六题解
难度分布签到 D简单 A B F J中等 C E G I困难 HA⑨的冻青蛙思路博弈如果是3的倍数则后手胜利。如果先手拿1则后手拿2如果先手拿2则后手拿1后手一定可以取走最后的青蛙。如果不是3的倍数先手可以通过取一次青蛙把青蛙的数量变成3的倍数随后按照上面的思路把自己当作后手则先手一定取走最后的青蛙则先手必胜。代码#includebits/stdc.husingnamespacestd;#defineintlonglongsignedmain(){intn;cinn;if(n%30){cout(99)endl;}else{coutQAQendl;}return0;}B⑨的切磋思路显然不会出现输出あたいってば最強ね的情况当做题数相等时输出最强的我下意识地感到了危险,否则输出(99)。代码#includebits/stdc.husingnamespacestd;#defineintlonglongsignedmain(){intn;cinn;intres0;for(inti0;in;i){inta,b;charch;cinachb;if(ch){if(ab9)res;}else{if(a-b9)res;}}if(resn)cout最强的我下意识地感到了危险;elsecout(99);return0;}COSU思路按照题意遍历数组并记录上一个1的位置。代码#includebits/stdc.husingnamespacestd;voidsolve(){intn,k;cinnk;string s;cins;intans0;intlast-1e9;for(inti0;in;i){if(s[i]1i-lastk)ans;if(s[i]1)lasti;}coutans\n;}intmain(){ios::sync_with_stdio(false);cin.tie(0);intt;cint;while(t--)solve();}DCiallo(∠・ω )⌒☆思路签到题按照题目要求直接输出即可。代码#includebits/stdc.husingnamespacestd;#defineintlonglongsignedmain(){for(inti0;i721;i)coutCiallo(∠•ω )⌒☆endl;return0;}E喵喵的喵喵思路前缀和遍历数组查找最大值即可。代码#includebits/stdc.husingnamespacestd;#defineintlonglongsignedmain(){intn,k;cinnk;vectorinta(n1);for(inti1;in;i)cina[i];a[0]0;for(inti1;in;i)a[i]a[i-1];intl0,r0,mm0;for(intin;ik;i--){if(a[i]-a[i-k]mm){mma[i]-a[i-k];li-k1;ri;}}coutmmendll rendl;return0;}F喵喵的排名(esay)思路本题考察结构体排序用结构体数组把题目的数据储存起来因为数据量较小依据题意进行冒泡排序依照题意输出即可代码#includebits/stdc.husingnamespacestd;structplayer{string name;intkills;intdeaths;intassists;};intcmp(player A,player B){if(A.kills!B.kills)returnA.killsB.kills;elseif(A.deaths!B.deaths)returnA.deathsB.deaths;elsereturnA.assistsB.assists;}intmain(){intn;cinn;vectorplayerp;for(inti0;in;i){string n;inta,b,c;cinnabc;p.push_back({n,a,b,c});}// 冒泡排序for(inti0;in;i){for(intji1;jn;j){// 比较 killsif(p[i].killsp[j].kills){swap(p[i],p[j]);}elseif(p[i].killsp[j].kills){// 如果 kills 相同比较 deathsif(p[i].deathsp[j].deaths){swap(p[i],p[j]);}elseif(p[i].deathsp[j].deaths){// 如果 deaths 也相同比较 assistsif(p[i].assistsp[j].assists){swap(p[i],p[j]);}}}}}for(inti0;in;i){coutp[i].name p[i].kills p[i].deaths p[i].assistsendl;}}G喵喵的排名(hard)思路本题与F题的差别在于数据量变大了冒泡排序无法AC并新增一项字典序排序要求。同样用结构体数组储存题目数据。然后编写cmp函数借助STL库中的sort函数进行自定义排序最后依题意输出即可代码#includebits/stdc.husingnamespacestd;structplayer{string name;intkills;intdeaths;intassists;};intcmp(player A,player B){if(A.kills!B.kills)returnA.killsB.kills;elseif(A.deaths!B.deaths)returnA.deathsB.deaths;elseif(A.assists!B.assists)returnA.assistsB.assists;elsereturnA.nameB.name;}intmain(){intn;cinn;vectorplayerp;for(inti0;in;i){string n;inta,b,c;cinnabc;p.push_back({n,a,b,c});}sort(p.begin(),p.end(),cmp);for(inti0;in;i){coutp[i].name p[i].kills p[i].deaths p[i].assistsendl;}}H喵喵的网吧思路二分做法对于m块电池最少可以让电脑运行0分钟最多可以让电脑运行sum分钟(sum:所有电池可以让一台电脑运行的时间总和)则答案必定在这个区间内且满足单调性所以我们考虑用二分法来解决这道题目我们可以假设让n台电脑共同运行x分钟那么对于让一台电脑运行时间大于等于x的电池可以让它固定在一台电脑上持续供电这是对此类电池的最优方案对于剩余供电时长不满足x分钟的电池我们可以随意组合因为换电池不消耗时间所以只要剩余电池的供电总时长大于等于剩余电脑*x即可满足让n台电脑同时运行x分钟否则不能。因为可以让n台电脑同时运行x分钟则必然可以让n台电脑同时运行小于x的时长只需要向上二分更大的答案看是否成立即可否则向下二分更小的答案看否成立最终结果既为正确答案。代码#includebits/stdc.husingnamespacestd;usinglllonglong;boolcheck(vectorlla,ll mid,intn){ll sum0;for(inti0;ia.size();i){if(a[i]mid){n--;}else{suma[i];}}if(sumn*mid){returntrue;}returnfalse;}intmain(){intn,m;cinnm;vectorlla(m);ll sum0;for(inti0;im;i){cina[i];suma[i];}ll l0,rsum,ans0;while(lr){ll mid(lr)/2;if(check(a,mid,n)){ansmid;lmid1;}else{rmid-1;}}coutansendl;return0;}贪心做法受解法一的启发我们可以得出如下贪心策略记所有电池的电量总和为sum \text{sum}sum则理论上至多可以供电x ⌊ sum n ⌋ x \left\lfloor \frac{\text{sum}}{n} \right\rfloorx⌊nsum​⌋我们对电池电量从大到小排序然后从电量最大的电池开始遍历1.若该电池电量超过x xx则将其供给一台电脑问题缩减为n − 1 n-1n−1台电脑的子问题。2.若该电池电量不超过x xx则其余电池的电量均不超过x xx此时有n ⋅ x n ⋅ ⌊ sum n ⌋ ≤ sum n \cdot x n \cdot \left\lfloor \frac{\text{sum}}{n} \right\rfloor \leq \text{sum}n⋅xn⋅⌊nsum​⌋≤sum根据解法一的结论这些电池可以给n nn台电脑供电x xx分钟。由于随着问题规模减小x xx单调非增因此若遍历到一个电量不超过x xx的电池时可直接返回x xx作为答案。代码#includebits/stdc.husingnamespacestd;usinglllonglong;intmain(){ll n,m;cinnm;vectorlla(m);ll sum0;for(inti0;im;i){cina[i];suma[i];}sort(a.begin(),a.end(),greaterll());for(inti0;ia.size();i){if(a[i]sum/n){coutsum/n;return0;}n--;sum-a[i];}return0;}I喵喵方块思路按照题意模拟即可记录当前最高的位置。代码#includebits/stdc.h#defineintlonglongusingnamespacestd;signedmain(){intn,m;cinnm;inth0;vectorinthh(n1,0);for(inti1;im;i){intt,x;cintx;if(t1){if(hh[x]-2hh[x1]){hh[x];hh[x1]hh[x];}else{hh[x1]3;hh[x]hh[x1];}hmax(h,hh[x]);}elseif(t2){if(hh[x]1hh[x1]){hh[x]2;hh[x1]hh[x]1;}else{hh[x1]2;hh[x]hh[x1]-1;}hmax(h,hh[x1]);}elseif(t3){if(hh[x]-1hh[x1]hh[x]hh[x2]){hh[x];hh[x1]hh[x]1;hh[x2]hh[x];}elseif(hh[x1]1hh[x]hh[x1]1hh[x2]){hh[x1]3;hh[x]hh[x1]-1;hh[x2]hh[x1]-1;}elseif(hh[x2]-1hh[x1]hh[x2]hh[x]){hh[x2];hh[x]hh[x2];hh[x1]hh[x2]1;}hmax(h,hh[x1]);}elseif(t4){hh[x]4;hmax(h,hh[x]);}elseif(t5){if(hh[x]-1hh[x1]){hh[x];hh[x1]hh[x]1;}else{hh[x1]3;hh[x]hh[x1]-1;}hmax(h,hh[x1]);}elseif(t6){if(hh[x]hh[x1]){hh[x]2;hh[x1]hh[x];}else{hh[x1]2;hh[x]hh[x1];}hmax(h,hh[x]);}}couthendl;return0;}J喵喵喵思路遍历字符串如果遇到标点符号插入miao,注意不要在原字符串中暴力插入后再输出时间复杂度过高会导致程序时间超限。代码#includebits/stdc.husingnamespacestd;#defineintlonglongsignedmain(){string s;getline(cin,s);for(autoit:s){if(it,||it.||it?||it!)cout miao;coutit;}return0;}
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

跨越研发鸿沟:从AI工具到组织进化的实战路径 2026/9/29 16:41:45

跨越研发鸿沟:从AI工具到组织进化的实战路径

做技术管理这些年,我见过太多公司把“AI转型”做成了一场大型采购展销会:预算到位、API额度到位、全员培训到位,口号从“拥抱AI”喊到“All in AI”,结果三个月后一复盘,研发交付周期纹丝不动,代码评审时间…

阅读更多 →
PHP生成器返回值详解:getReturn()原理与实战 2026/9/29 16:41:45

PHP生成器返回值详解:getReturn()原理与实战

1. 生成器与返回值:先搞懂基底机制 1.1 生成器的本质:一个会暂停的循环 PHP 生成器是我在实际项目中用得越来越多的特性,它可以理解成一个"会暂停的循环"——每当函数执行到 yield 关键字时,它会暂停执行&#xff0c…

阅读更多 →
SSM+Django商城系统毕设全解析:数据库、订单与部署实战 2026/9/29 16:41:44

SSM+Django商城系统毕设全解析:数据库、订单与部署实战

做商城系统这个方向,在Java课程设计和毕业设计里可以说是最经典的一类选题了。原因很直白:业务场景大家都熟悉,功能边界好把握,容易出效果,而且从技术点覆盖度来说,登录注册、商品展示、购物车、订单、后台…

阅读更多 →
starnet 实战:用 MCP 协议把本地工具接入 AI Agent 2026/9/29 16:41:44

starnet 实战:用 MCP 协议把本地工具接入 AI Agent

1. 从"starnet"这个名字说起:它到底想解决什么问题 第一次看到"starnet"这个项目名,我脑子里冒出来的第一个念头是"星网"——一个把分散节点连成一张网的东西。后来翻了一圈相关的讨论和热词,基本印证了这个判…

阅读更多 →
starnet桌面智能体网络:OpenRouter与MCP工具链实战 2026/9/29 16:41:31

starnet桌面智能体网络:OpenRouter与MCP工具链实战

1. 从“starnet”这个名字说起:它到底想解决什么问题第一次看到“starnet”这个项目名,加上关键词里那一串AI agents、desktop、OpenRouter、MCP,我脑子里第一反应是:这大概率是一个把桌面端 AI 智能体和外部模型服务、工具协议串…

阅读更多 →
Java校园二手交易平台源码拆解:从环境搭建到交易闭环的毕业设计实战 2026/9/29 16:41:31

Java校园二手交易平台源码拆解:从环境搭建到交易闭环的毕业设计实战

简介:这份资源是基于Java的校园二手交易平台毕业设计完整源码包,面向计算机相关专业需要完成毕业设计的学生,以及想通过真实项目巩固Java Web开发技能的开发者。项目围绕校园闲置物品发布、浏览、交易等核心场景展开,可作为课程设…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉