Codeforces Round 1037 (Div. 3)(补题)

文章目录

  • 前言
  • A.Only One Digit
  • B.No Casino in the Mountains
  • C. I Will Definitely Make It
  • D.This Is the Last Time
  • E.G-C-D, Unlucky!
  • 总结


前言

感觉前四道,就是考对于题目的理解能力,以及自己的模拟能力


A.Only One Digit

题目传送门:Only One Digit
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
对于这一题,只要读懂题之后,一个排序就行了
AC代码:

#include<bits/stdc++.h>
using namespace std;
#define IOS ios::sync_with_stdio(0),cin.tie(0),cout.tie(0)
#define ll long long
#define endl '\n'
const ll N=1e6+10;
void solve()
{string s;cin>>s;ll n[5];for(ll i=0;i<s.size();i++){n[i]=s[i]-'0';}sort(n,n+s.size());cout<<n[0]<<endl;
}
signed main()
{ll t=1;cin>>t;while(t--){solve();}return 0;
}

B.No Casino in the Mountains

题目传送门:No Casino in the Mountains
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这一题由于只有0和1,故就想到了前缀和,然后再按照题目描写的模拟一下就行了
AC代码:

#include<bits/stdc++.h>
using namespace std;
#define IOS ios::sync_with_stdio(0),cin.tie(0),cout.tie(0)
#define ll long long
#define endl '\n'
const ll N=1e6+10;
ll s[N];
ll a[N];
void solve()
{ll n,k;cin>>n>>k;ll sum=0;ll ans=0;for(ll i=1;i<=n;i++){cin>>s[i];a[i]=a[i-1]+s[i];if(s[i]==1)sum++;}if(sum==n)//特判一下是否全为1{cout<<0<<endl;return ;}ll x=0;for(ll i=1;i<=n;i++){x=i;if(s[i]==0)//为了去除开头连续的1break;}for(ll i=x;i+k-1<=n;i++){if(a[i+k-1]-a[i]==0&&s[i]==0)//判断一下是否满足条件{ans++;i=i+k;}}cout<<ans<<endl;
}
signed main()
{ll t=1;cin>>t;while(t--){solve();}return 0;
}

C. I Will Definitely Make It

题目传送门:I Will Definitely Make It
在这里插入图片描述在这里插入图片描述在这里插入图片描述
在这里插入图片描述
对于这一题当时快写吐了,等到快结束的时候,又重新读了一下题,才发现之前理解错了,导致一直过不了,最后剩几分钟,也来不及改了,结束之后,重新敲了一遍,直接过了,无语。
主要思路:
通过观察会发现当开始在哪座山时,只要之后的山与当前的位置高度小于等于,最开始山的高度,就不会被淹,只需要排完序之后,来进行判断从最开始的山一直到最高的山是否,会出现高度差大于最开始山的高度。如果出现了就是“NO”,否则就是“YES”;
AC代码:

#include<bits/stdc++.h>
using namespace std;
#define IOS ios::sync_with_stdio(0),cin.tie(0),cout.tie(0)
#define ll long long
#define endl '\n'
const ll N=1e5+10;
ll s[N];
ll s1[N];
void solve()
{ll n,k;cin>>n>>k;for(ll i=1;i<=n;i++){cin>>s[i];}ll a=s[k],x=0;;sort(s+1,s+n+1);for(ll i=1;i<=n;i++)if(s[i]==a)x=i;ll m=1;for(ll i=x;i+1<=n;i++){s1[m++]=s[i+1]-s[i];//将高度差存入数组中}sort(s1+1,s1+m);//对其进行排序ll f=0;for(ll i=1;i<m;i++){if(s1[i]>a)//如果出现大于起始高度时就进行标记,如何跳出循环{f=1;break;}}if(f)cout<<"NO"<<endl;elsecout<<"YES"<<endl;
}
signed main()
{IOS;ll t=1;cin>>t;while(t--){solve();}return 0;
}

D.This Is the Last Time

题目传送门:This Is the Last Time
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这一题就是贪心,当时只想着就进行排序,然后对其答案进行更新,没有约束最大值,导致wa了两发,然后改了过来,由于数组开小了,又wa了1发。WA警示自己!!!
解题思路:
这一题只需要利用结构体按照L从小到大排序,然后循环,最后再循环的时候约束一下最大值就行了。
AC代码:

#include<bits/stdc++.h>
using namespace std;
#define IOS ios::sync_with_stdio(0),cin.tie(0),cout.tie(0)
#define ll long long
#define endl '\n'
const ll N=1e5+10;
struct node{ll x,y,sum;
}s[N];
bool cmd(node a,node b)
{return a.x<b.x;
}
void solve()
{ll n,k;cin>>n>>k;for(ll i=1;i<=n;i++){cin>>s[i].x>>s[i].y>>s[i].sum;}sort(s+1,s+1+n,cmd);//按照x从小到大排序ll ans=k;for(ll i=1;i<=n;i++){if(ans>=s[i].x&&ans<=s[i].y&&ans<=s[i].sum)//如果大于sum,则进行更新,ans=s[i].sum;}cout<<ans<<endl;
}
signed main()
{ll t=1;cin>>t;while(t--){solve();}return 0;
}

E.G-C-D, Unlucky!

题目传送门:E.G-C-D, Unlucky!
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
解题思路:
这一题就是找规律题,
1. 通过前缀与后缀的定义就会发现,前缀与后缀数组,到最后都是包含了所有数;故前缀数组的最后一个数与后缀数组的第一个数应该相同。
2. 由于公约数是求两个数的公因数,而公因数都是小于等于这这两个数最小的本身,由此可以得到,其数组必定是单调的

前缀: 非单调递增。

后缀:非单调递减。

3. 就是公约数的性质了
在这里插入图片描述
在这里插入图片描述
AC代码:

#include<bits/stdc++.h>
using namespace std;
#define IOS ios::sync_with_stdio(0),cin.tie(0),cout.tie(0)
#define ll long long
#define endl '\n'
const ll N=1e6+10;
ll a[N],b[N],c[N];
ll lcm(ll x,ll y)
{return x*y/__gcd(x,y);
}
void solve()
{ll n;cin>>n;for(ll i=1;i<=n;i++)cin>>a[i];for(ll i=1;i<=n;i++)cin>>b[i];if(a[n]!=b[1]){cout<<"NO"<<endl;return ;}for(ll i=1;i+1<=n;i++){if(a[i]<a[i+1]){cout<<"NO"<<endl;return ;}}for(ll i=1;i+1<=n;i++){if(b[i]>b[i+1]){cout<<"NO"<<endl;return ;}}for(ll i=1;i<=n;i++){ll l=lcm(a[i],b[i]);if(i>1&&__gcd(a[i-1],l)!=a[i]){cout<<"NO"<<endl;return;}if(i+1<=n&&__gcd(b[i+1],l)!=b[i]){cout<<"NO"<<endl;return;}}cout<<"YES"<<endl;
}
signed main()
{IOS;ll t=1;cin>>t;while(t--){solve();}return 0;
}

lcm(a[i],b[i])
a[i]=p[i];
b[i]=s[i];
如果从传递性来进行推理的话
在这里插入图片描述
lcm求出来的就是a[i]然后再利用传递性与p[i-1]求最大公因数

构造的核心思想:
对于每个位置 i,构造候选的数组 a 元素为 a[i](前缀 GCD)和 b[i](后缀 GCD)的最小公倍数 l。因为 a 数组的元素需要同时是前缀 GCD 和后缀 GCD 的倍数,最小公倍数是满足该条件的最小可能值 。


总结

不知道是在协会敲代码,敲习惯了,看着大屏幕,很少分神。然而到了寝室看自己的电脑敲代码,总是很难集中注意看题。总是看着题目读着读着心神就飘到其他地方去了~~~~
嗯,集中注意力,下回必须集中注意力!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/89625.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/89625.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于单片机智能插座设计/智能开关

传送门 &#x1f449;&#x1f449;&#x1f449;&#x1f449;其他作品题目速选一览表 &#x1f449;&#x1f449;&#x1f449;&#x1f449;其他作品题目功能速览 概述 随着我国的电子计算机技术的快速发展以及居民对现实生活的要求也在不断提升&#xff0c;所以很多…

[Linux]git_gdb

一、git1. git 常用指令git status 查看仓库状态git add <文件名> 把文件添加到仓库暂存区git commit -m "信息" 把文件加入仓库git push 把本地仓库同步到远端git pull …

医疗AI与融合数据库的整合:挑战、架构与未来展望(下)

🩺 解决方案:引入融合数据库(Multi-modal Data Fusion DB) 医院引入一款支持图、向量、表、流的融合数据库(如Oracle ADW、Milvus+PostgreSQL、或某国产平台),完成了以下集成: 数据类型 来源系统 格式/模型 示例内容 基因组数据 NGS平台 VCF / JSON / 图 EGFR突变、A…

【深度强化学习】MIP-DQN 实现案例(完整Python代码)

目录MIP-DQN 算法概述建模基础训练阶段&#xff08;Training&#xff09;部署阶段&#xff08;Online Execution&#xff09;DNN 网络转化为 MIP 表达式性能指标完整 Python 代码实现主函数&#xff1a;random_generator_battery模型函数&#xff1a;MIP_DQN基础/专用库包安装模…

微信小程序 wx.request() 的封装

基于微信小程序的wx.request()方法封装下面是一个封装方案&#xff0c;满足您提出的所有要求&#xff1a;class HttpService {constructor() {this.baseUrl ; // 基础URLthis.pendingRequests new Map(); // 请求缓存池this.interceptors {request: [],response: []};}// 设…

yolo8实时识别目标(和平精英敌人+骨骼关键点)

现在需要识别人物的肢体&#xff08;姿态/骨骼关键点&#xff09;&#xff0c;即所谓的「姿态估计&#xff08;pose estimation&#xff09;」&#xff0c;以下是一些主流、训练好可直接使用的开源模型推荐&#xff0c;支持多人识别与骨骼关键点检测&#xff0c;适合你后续用于…

MyBatis动态SQL全解析:五大核心标签实战指南

MyBatis动态SQL全解析&#xff1a;五大核心标签实战指南 一、动态SQL的价值&#xff1a;告别硬编码时代 传统SQL拼接的痛点 // 传统方式需要手动拼接SQL字符串 StringBuilder sql new StringBuilder("SELECT * FROM orders WHERE 11"); if (status ! null) {sql.app…

线上 CPU 过高怎么排查

通过以下几个命令解决1、top命令&#xff0c;找到 CPU 过高的pid(进程); ​编辑 2、根据pid(进程)找到CPU过高的线程id;top -H -p pid(进程)3、把线程id转换16 进制的printf 0x%x\n 线程id4、导致CPU 飙升的线程异常信息&#xff0c;-A 30表示打印 30 行记录jstack pid(进程id)…

Letter Combination of a Phone Number

IntroduceProblem Analysis (Using “258” as example) //2 a b c //5 j k l //8 t u vPossible letter combinations: a, j, t (no further options, this is one combination)a, j, u (no further options, another combination)a, j, v (another c…

【问题解决】npm包下载速度慢

问题描述&#xff1a; npm包下载速度慢 问题原因&#xff1a; 为什么下载 npm 包速度慢&#xff1f; 在使用npm下包的时候&#xff0c;默认从国外的https://regitry.npmjs.org/服务器进行下载。此时&#xff0c;网络数据的传输需要经过漫长的海底光缆&#xff0c;因此下包速度…

Apache DolphinScheduler介绍与部署

目录 一、软件介绍 1、软件概述 2、发展历史 3、名词解释 4、模块介绍 软件部署 1、下载发布包 2、上传与解压 3、启动 4、浏览器验证 一、软件介绍 1、软件概述 Apache DolphinScheduler 是一个分布式易扩展的可视化DAG工作流任务调度开源系统。适用于企业级场景&…

Selenium 启动的浏览器自动退出问题分析

当 Selenium 启动的浏览器自动关闭时&#xff0c;通常是由于以下原因导致的&#xff1a;1. 脚本执行完毕原因&#xff1a;Selenium 脚本执行到末尾时&#xff0c;如果没有保持浏览器打开的代码&#xff08;如time.sleep()或循环&#xff09;&#xff0c;浏览器会自动关闭。解决…

rust实现的快捷补全到剪贴板的实用工具

最近在兼职项目中老是遇到这样的场景&#xff1a; 在云服务器之间通过scp命令传输文件&#xff0c;密码太长记不住(客户服务器不方便ssh-copy-id)在服务器上使用mysql命令登录修改数据&#xff0c;数据库密码太长记不住&#xff08;客户设置的密码&#xff0c;直接改掉哈&#…

信息系统风险的安全技术防范思路

针对信息系统风险的安全技术防范思路 降低风险&#xff0c;即提升了安全能力和水平 保护资产 加强信息系统软硬件及数据安全保护&#xff1b;减少脆弱性 通过研发、部署、应用各环节来尽量减少或避免脆弱性&#xff1b;应对威胁 采取防御措施&#xff0c;实施攻防对抗。

Java项目:基于SSM框架实现的网盘管理系统【ssm+B/S架构+源码+数据库+毕业论文】

摘 要 网络技术和计算机技术发展至今&#xff0c;已经拥有了深厚的理论基础&#xff0c;并在现实中进行了充分运用&#xff0c;尤其是基于计算机运行的软件更是受到各界的关注。加上现在人们已经步入信息时代&#xff0c;所以对于信息的宣传和管理就很关键。因此文件信息的管理…

Echart 地图放大缩小

文章目录 常用方法 1. **开启 `roam` 属性** 2. **通过鼠标滚轮或手势缩放** 3. **设置初始缩放比例** 4. **通过按钮控制缩放** 5. **限制缩放范围** 6. **监听缩放和平移事件** 7. **结合 `dataZoom` 实现数据缩放** 总结 相关文章 在 ECharts 中,可以通过设置地图的 roam …

针对VMware虚拟化环境迁移的复杂场景,我将从技术架构、迁移方案、代码实现、可视化流程四个维度进行专业解析,并提供完整的解决方案框架。

针对VMware虚拟化环境迁移的复杂场景&#xff0c;我将从技术架构、迁移方案、代码实现、可视化流程四个维度进行专业解析&#xff0c;并提供完整的解决方案框架。一、技术架构分析&#xff08;架构图表格对比&#xff09;graph TDA[源环境] -->|vMotion| B[目标环境]A -->…

揭秘 AIGC 背后的技术:GPT、BERT 与 Transformer 模型的工作原理

一、引言AIGC 的崛起与重要性人工智能生成内容&#xff08;AIGC&#xff09;已经不再是未来的技术&#xff0c;它正以惊人的速度渗透到各行各业&#xff0c;重新定义了内容创作、媒体生产、甚至人类认知的边界。从深度学习到大规模自然语言处理&#xff0c;AIGC 的崛起代表着一…

Compose笔记(三十五)--ModalBottomSheetLayout

这一节主要了解一下Compose中的ModalBottomSheetLayout&#xff0c;在Jetpack Compose开发中&#xff0c;ModalBottomSheetLayout是Material Design组件库中用于实现模态底部面板的核心组件&#xff0c;其核心作用是通过声明式API管理底部面板的显示、隐藏及交互逻辑。API Moda…

AWS Partner: Accreditation (Technical)

AWS Partner: Accreditation &#xff08;Technical&#xff09;AWS 核心技术简介云计算的优势AWS 全球基础设施核心技术&#xff1a;计算 Amazon Elastic Compute Cloud (Amazon EC2)存储数据库联网安全性从服务到解决方案解决方案设计简介迁移策略架构最佳实践AWS Well-Archi…