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

【LGR-251-Div.4】洛谷入门赛 #40 解析

已经提交,能够确保正确性。

T1:

矩阵中一共有 a \times b 个同学,有 a + b - 1 个红帽子,则有 a \times b - a - b + 1 个黄帽子,由于不能看到自己,需要 -1,即a \times b - a - b

代:码:

#include<iostream>
using namespace std;int main(){int a,b;cin>>a>>b;cout<<a*b-a-b;return 0;
}

T2:

先判断两选项之间是否有相同选项,否则判断自己的答案是否存在过,若没有存在过,输出第二大的选项。

#include<iostream>
using namespace std;int main(){int a,b,c,d;cin>>a>>b>>c>>d;if(a==b||a==c||b==c) return cout<<"Report",0;A:;if(a==d) return cout<<"A",0;if(b==d) return cout<<"B",0;if(c==d) return cout<<"C",0;d=a+b+c-max(a,max(b,c))-min(a,min(b,c));goto A;return 0;
}

T3:

使用字符串,从第二位开始判断,如果这一位不是 0 则输出No,最后都没有退出则输出Yes。

#include<iostream>
using namespace std;int main(){string s;cin>>s;for(int i=1;i<=s.size()-1;i++) if(s[i]!='0') return cout<<"No",0;cout<<"Yes";return 0;
}

T4:

如果发现当前数为 x,则令计数器加 1,如果计数器为 k,输出答案,否则最后输出Error。

#include<iostream>
using namespace std;
int n,k,x,cnt;
int main(){cin>>n;int a[n+1];for(int i=1;i<=n;i++) cin>>a[i];cin>>k>>x;for(int i=1;i<=n;i++){if(a[i]==x) cnt++;if(cnt==k) return cout<<i,0;}cout<<"Error";return 0;
}

T5:

对于每个位置进行判断,如果不满足条件立马退出,否则最后输出Yes。

2025年10月17日22:42:47 修改,在i==n并且a[n]==0时错误,进行特判,否则导致最后一个测试点错误,无法输出正确答案。

#include<iostream>
using namespace std;
int _,n;
bool f=0;
int main() {cin>>_;while(_--) {f=1;cin>>n;int a[n+1];for(int i=1; i<=n; i++) cin>>a[i];for(int i=1; i<=n; i++) {if(i%2==1) {if(a[i]!=a[i+1]) {cout<<"No\n";f=0;break;}} else {if(i!=n&&a[i]==a[i+1]) {cout<<"No\n";f=0;break;}}}if(f) cout<<"Yes\n";}return 0;
}

T6:

对于每个数,将他除以 m 的余数用桶存储起来,最后统计再输出即可。

#include<iostream>
using namespace std;
int n,q,m,ans;
int main() {cin>>n>>q;int a[n+1];for(int i=1;i<=n;i++) cin>>a[i];while(q--){cin>>m,ans=0;bool f[m];for(int i=0;i<m;i++) f[i]=0;for(int i=1;i<=n;i++) f[a[i]%m]=1;for(int i=0;i<m;i++) if(f[i]) ans++;cout<<ans<<"\n";}return 0;
}

T7:

现将中间的数字读取,使用 stack 存储,倒序每一个,取数字,当前数字需要存储,最后答案输出即可。

#include<bits/stdc++.h>
using namespace std;
int n,num,ans;
string s;
stack<char> stk;
int main() {cin>>n;int a[n+1],b[n+1];for(int i=1;i<=n;i++) cin>>a[i];for(int i=1;i<=n;i++) cin>>b[i];cin>>s;for(int i=0;i<s.size();i++){if(s[i]=='a'||s[i]=='b') stk.push(s[i]);if(s[i]>='0'&&s[i]<='9') num=num*10+s[i]-'0';}while(!stk.empty()){if(stk.top()=='a') ans=a[num];else ans=b[num];num=ans;stk.pop();}cout<<ans;return 0;
}

T8:

考虑使用O1时间计算当前箱子最低的降落位置,即可完成模拟。

#include<bits/stdc++.h>
using namespace std;
int main() {int n,m;cin>>n>>m;string g[n+1];for(int i=0; i<n; ++i) cin>>g[i];for(int j=0; j<m; ++j) {vector<char>r(n,'.');int b=n-1;for(int i=n-1; i>=0; --i) {if(g[i][j]=='-') {r[i]='-';b=i-1;} else if(g[i][j]!='.') {if(b>=0) {r[b]=g[i][j];b--;}}}for(int i=0; i<n; ++i) g[i][j]=r[i];}for(const string&s:g) cout<<s<<'\n';return 0;
}

http://www.dtcms.com/a/496287.html

相关文章:

  • 网站的建设心得前端培训班推荐
  • 【小学教辅】25新二年级上册语文阅读理解专项练习 小学二年级语文阅读训练题 二年级上册语文考点精练 电子版可下载打印|夸克网盘
  • 【实时Linux实战系列】内核抢占模型(Preemption Models)的选择与影响
  • 练习python题目小记(二)
  • 红黑树详解
  • 海东营销网站建设服务卫生监督 网站建设方案
  • 网站搭建崩溃桂林网站建
  • React开发模式解析:JSX语法与生命周期管理
  • MAUI :通过自定义附加属性实现事件与命令的绑定
  • 珠海柏泰教育官方网站建设天元建设集团有限公司技术中心
  • Process Monitor 学习笔记(5.11):将自定义调试输出“注入”到 Procmon 追踪
  • 网站建设mng临沂网站设计建设
  • 第N7周打卡:调用Gensim库训练Word2Vec模型
  • 飞阳建设网站北京高端网页
  • 网站开发的问题有哪些东营做网站哪家好
  • 第8章 基于表格型方法的规划和学习(4) 期望更新与采样更新
  • 唐山网站制作系统站长之家域名
  • 全国的做网站的公司低代码建站平台
  • open-webui docker高速下载本地部署
  • 东台企业网站建设手机网站域名解析怎么做
  • 公司网站空间申请wordpress的托管
  • 中兴ZXV10 B860AV2.1-T 3.0_S905L3B_uw5621无线(可通刷CA)线刷固件包
  • 需求基线管理的数智化转型:痛点、路径与实践价值
  • 沈阳企业网站开发定制wordpress的第三方登录插件
  • N8N系列:新手教程,“出色外交官” Webhook节点,打通外部应用,让工作流不再 “闭门运行”
  • 建设网站jw100济南网络策划
  • 织梦网站怎么重新安装教程网络营销方案论文
  • 剑指offer:面试题39数组中出现次数超过一半的数字、面试题40最小的k个数、面试题41数据流中的中位数
  • 广州网站建设藤虎网络许昌企业网站建设公司
  • dede网站制作教程数据分析网站开发