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

洛谷P1042 P2670 P1563题解

洛谷P1042 P2670 P1563题解

作者:爱吃大芒果

个人主页 爱吃大芒果

本文所属专栏 从0到1自学C++

更多专栏

Ascend C 算子开发教程(进阶)
鸿蒙集成
Flutter


P1042

题目链接

题目分析

我们可以使用while循环不断读取输入字符,直到遇到’E’为止。然后我们可以定义一个函数来处理比赛得分的计算。该函数接受一个参数lim,表示比赛的得分上限。在函数中,我们遍历输入的字符串,根据字符’W’和’L’分别增加A队和B队的得分。当任一队的得分达到lim且两队得分差至少为2时,我们输出当前比分并重置得分。最后,在主函数中调用该函数两次,分别传入11和21作为参数。

AC代码

#include<bits/stdc++.h>usingnamespacestd;charc;//存储输入的单个字符string s;//存储输入比赛信息到字符串inta=0,b=0,n;voidfct(intlim){//lim为得分上限for(chari:s){//每次循环,i获取s中的一个字符,对i进行操作if(i=='W')a++;//A队得分加1if(i=='L')b++;//B队得分加1if(max(a,b)>=lim&&abs(a-b)>=2){cout<<a<<':'<<b<<endl;//输出比分a=0,b=0;//重置比分}}printf("%d:%d\n\n",a,b);a=0,b=0;//重置比分}intmain(){while(cin>>c){//while循环读取字符直到遇到'E'if(c=='E')break;s+=c;}fct(11),fct(21);return0;}

P2670

题目链接

题目分析

我们可以使用一个二维数组来表示雷区,并在数组的边界上添加一圈哨兵(例如使用字符’#‘)以简化边界检查。然后,我们遍历雷区的每个单元格,如果该单元格不是雷(即不是’*'),我们就检查它周围的八个方向,统计相邻雷的数量,并将该数量存储在对应的单元格中。最后,我们输出处理后的雷区。

AC代码

#include<bits/stdc++.h>usingnamespacestd;intmain(){constintdx[]={1,1,1,0,0,-1,-1,-1};//八个方向的x坐标变化constintdy[]={-1,0,1,-1,1,-1,0,1};//八个方向的y坐标变化constintmaxn=105;//定义最大行列数charg[105][105];//雷区数组intm,n;cin>>n>>m;for(inti=1;i<=n;i++)for(intj=1;j<=m;j++)cin>>g[i][j];//输入雷区for(inti=1;i<=n;i++){for(intj=1;j<=m;j++)if(g[i][j]!='*'){//如果不是雷intcnt=0;//统计相邻雷的数量for(intk=0;k<8;k++)//遍历八个方向if(g[i+dx[k]][j+dy[k]]=='*')cnt++;//检查相邻的八个方向cout<<cnt;}elsecout<<"*";cout<<endl;}return0;}

P1563

题目链接

题目分析

我们可以使用一个数组来存储每个人的方向,然后使用一个循环来模拟n次操作。在每次操作中,我们根据当前人的方向和操作类型来计算下一个人的位置。最后,我们输出最后一个人的名字。

注意:在模拟n次操作时,我们需要使用取模运算来防止越界。

由于题意不太好理解,以测试样例为例,如图所示:

AC代码

#include<bits/stdc++.h>usingnamespacestd;intmain(){intn,m;cin>>n>>m;vector<int>dir(n);// 0 向左 1 向右vector<string>job(n);//工作for(inti=0;i<n;i++){cin>>dir[i]>>job[i];//输入方向和工作}intcur=0;// 当前所在位置for(inti=0;i<m;i++){inta,s;// a: 操作类型 s: 步数cin>>a>>s;// 输入操作类型和步数if(dir[cur]==0&&a==0){cur=(cur-s+n)%n;// 向左转,s步,取模n防止越界}elseif(dir[cur]==0&&a==1){cur=(cur+s)%n;// 向右转,s步,取模n防止越界}elseif(dir[cur]==1&&a==0){cur=(cur+s)%n;// 向右转,s步,取模n防止越界}elseif(dir[cur]==1&&a==1){cur=(cur-s+n)%n;// 向左转,s步,取模n防止越界}}cout<<job[cur]<<endl;//输出最后一个人的名字return0;}

总结

以上就是洛谷P1042 P2670 P1563题解的全部内容。
希望对你有所帮助。
如果有任何问题,欢迎交流。

http://www.zskr.cn/news/140897.html

相关文章:

  • 【AI模型自动化部署终极方案】:智普Open-AutoGLM服务器配置全攻略
  • Open-AutoGLM部署难题全解析,资深架构师亲授避坑秘诀
  • 大话存储(通俗解释版)(十四)虚拟化
  • 显存不足也能跑?Open-AutoGLM笔记本部署优化技巧,99%的人不知道
  • 跨系统数据同步总失败?Open-AutoGLM高级配置技巧来了,90%的人都忽略了第5项
  • VisionMaster基础使用(六)_标定板标定案例
  • 直播录制神器DouyinLiveRecorder:全网热门内容一键保存
  • PCB晶振选型指南:选对不踩坑
  • 2025财务审计企业推荐:深度测评专业机构,助力企业财务合规与价值提升 - myqiye
  • Open-AutoGLM跨应用操作完全手册(专家私藏版):从入门到精通仅需7步
  • 2025年烟囱消音器制造商权威推荐榜单:阻性消音器/窑尾消音器/钢铁厂消音器源头厂家精选 - 品牌推荐官
  • Python DXF自动化利器:ezdxf库深度解析与实战指南
  • Python自动化电商抢购实战:京东自动下单脚本零基础教程
  • JBoltAI V4开启“软件定义AI”新范式,国产框架以新质生产力引领智能革命
  • 3个核心功能:SMUDebugTool让Ryzen系统调试变得如此简单
  • 宝塔面板安装教程
  • 人人都是产品经理 学习笔记
  • XHS-Downloader小红书内容采集与数据导出完整指南
  • 2025年GEO优化公司综合实力测评排名:技术深度与商业成效双维度权威TOP5榜单
  • 2025 拉萨轿车托运全场景体验指南:5 大品牌评分对比,鹏宇 9.98 分最适配藏区 - 品牌智鉴榜
  • 2025年行业内正规的方形横流冷却塔品牌怎么选购,冷却塔/工业冷却塔/方形横流冷却塔/圆形逆流冷却塔/方形横流冷却塔制造厂家如何选 - 品牌推荐师
  • https://doc.dcloud.net.cn/uni-app-x/app-harmony/
  • 工业4.0场景下智能蜂鸣器电路的发展趋势分析
  • Open-AutoGLM搭建常见故障TOP10,99%的人都踩过这些坑
  • 滴滴企业版携手纷享销客:以CRM重构企业出行服务新体验
  • 一物一码公司推荐榜:主推再互动(2025全域标杆首选) - 品牌智鉴榜
  • 2025年热门的金属折叠周转箱/工厂周转箱用户口碑认可参考(高评价) - 行业平台推荐
  • CCS安装实战:配置外部编辑器与版本控制集成
  • UABEA:解锁Unity游戏资源提取与修改工具的终极指南
  • 2025年评价高的儿童房攀岩墙/儿童房书桌厂家采购参考指南 - 行业平台推荐