Codeforces Round955 (Div2)--(A~D)题解

Problem - A - Codeforces

思路:如果领先方互换,那么“NO”,否则“YES”。

void solve(){                   Aint x1,y1; cin>>x1>>y1;int x2,y2; cin>>x2>>y2;if(x1>y1&&x2>y2||x1<y1&&x2<y2) cout<<"YES"<<endl;else cout<<"NO"<<endl;
}

Problem - B - Codeforces

思路:找现在的X还差多少可以被Y整除,即need=y-x%y;如此一直模拟即可。但是要注意的是,当X==1之后,是一直在循环的,每y-1次循环回到X==1.所以k%=(y-1)。因为y>=2,所以这样模拟的话,X会递减非常快,只要k足够大,X很快就递减到1,不会TLE。

void solve(){           Bint x,y,k; cin>>x>>y>>k;int need=y-x%y;while(k>=need){x+=need,k-=need;while(x%y==0) x/=y;need=y-x%y;if(x==1) k%=(y-1);          key!!!!!!!!!!!!!!}cout<<x+k<<endl;
}

Problem - C - Codeforces

思路:滑动窗口+贪心。

int arr[100005];
void solve(){               C  第一发写的太急了,应该是滑动窗口    写拉了,wa了3发。。int n,l,r; cin>>n>>l>>r;for(int i=1;i<=n;i++) cin>>arr[i];int idxl=1,idxr=1,ans=0,sum=0;while(idxr<=n){sum+=arr[idxr];if(sum>=l&&sum<=r||arr[idxr]>=l&&arr[idxr]<=r) ans++,sum=0,idxl=idxr+1;else if(sum>r){while(sum>r){   rr和r搞混了。。这里应该是sum>r  不是sum>rr。。。  这都能过样例。。  取名应该区分一点。。不然把自己搞混了sum-=arr[idxl];idxl++;}if(sum>=l&&sum<=r||arr[idxr]>=l&&arr[idxr]<=r) ans++,sum=0,idxl=idxr+1;   刚才复制的..这里忘了删rr++..}idxr++;}cout<<ans<<endl;
}

Problem - D - Codeforces

思路:一开始山峰的高度差dif是可知的,那么需要弥补这个dif。因为是固定了修改k*k的矩形,那么可以初始化,在每一个这样的k*k矩形中,存在的R山和B山各有几个,它们之间的差difrb就是可以作为弥补dif的值。那么计算出所有的difrb,题目就变成了判断是否存在c1a1+c2a2+...+cnan==dif.
要满足这个条件,那么dif%gcd(a1,a2,...,an)==0即可。初始化的话,我这里先是计算了每一个k*1的矩形的R,B各有几个,利于后面k*k矩阵的遍历移动(滑动窗口一样,只不过这里是长条的移动)。

int n,m,k;
int arr[550][550];
char mark[550][550];
pair<int,int> cnt[550][550];
void solve(){                    D..cin>>n>>m>>k;int red=0,blue=0;for(int i=1;i<=n;i++){for(int j=1;j<=m;j++){cin>>arr[i][j];}}for(int i=1;i<=n;i++){for(int j=1;j<=m;j++){cin>>mark[i][j];if(mark[i][j]=='0') red+=arr[i][j];else if(mark[i][j]=='1') blue+=arr[i][j];}}bool check=false;int dif=red-blue;if(k==1||dif==0) check=true;for(int i=1;i<=n-k+1;i++){   o(1e8)      初始化for(int j=1;j<=m;j++){int r=0,b=0;for(int f=i;f<=i+k-1;f++){if(mark[f][j]=='0') r++;else if(mark[f][j]=='1') b++;}cnt[i][j]={r,b};}}set<int> st;                    st最大是500...st中存在的是因子,需要判断能否通过使用这些因子的倍数组合,组合出dif----多重背包?--不可能,非常庞大X^500次方的级别,X为每个因子最多可以取的次数for(int i=1;i<=n-k+1;i++){int r=0,b=0;for(int j=1;j<=m+1;j++){if(j<=k) r+=cnt[i][j].first,b+=cnt[i][j].second;else{int difrb=abs(r-b);if(difrb!=0&&dif%difrb==0) check=true;if(difrb!=0) st.insert(difrb);if(j!=m+1){r-=cnt[i][j-k].first,b-=cnt[i][j-k].second;r+=cnt[i][j].first,b+=cnt[i][j].second;}}}}我想知道怎么判断,能否通过使用n个不同的数字a1,a2...an的倍数组合出数字X.即判断是否存在?a1+?a2+...+?an==X,其中?代表系数(可以为0).int gcd0=*st.begin();for(auto s:st) gcd0=gcd(gcd0,s);if(gcd0!=0&&dif%gcd0==0) check=true;这个st可以省去,直接计算gcd0if(check) cout<<"YES"<<endl;else cout<<"NO"<<endl;
}

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

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

相关文章

生成式AI:未来商业的变革者

在2023年&#xff0c;生成式人工智能&#xff08;GenAI&#xff09;的浪潮席卷了全球&#xff0c;成为科技领域最炙手可热的话题之一。它不仅改变了我们与机器的互动方式&#xff0c;更在商业创新和生产力提升方面发挥了巨大的作用。本文将深入探讨2024年生成式AI的应用模式、趋…

【git】存在git LFS文件时如何处理

目录 1. 安装 Git LFS2. 初始化 Git LFS3. 跟踪大文件4. 添加和提交文件5. 克隆和拉取包含 LFS 文件的仓库 1. 安装 Git LFS 首先&#xff0c;你需要在你的系统上安装 Git LFS。你可以使用以下命令来安装&#xff1a; 在 Linux 上 # 对于基于 Debian 的系统 (如 Ubuntu) sud…

k8s 离线部署一个busybox,进而创建cronjob执行任务

首先创建一个yaml&#xff0c;创建一个名字是busybox-test的容器 apiVersion: v1 kind: Pod metadata:name: busybox-testlabels:purpose: demonstrate-busybox spec:containers:- name: busyboximage: busyboximagePullPolicy: IfNotPresentcommand:- sleep- "3600"…

docker初始化运行mysql容器时自动导入数据库存储过程问题

问题&#xff1a;用navicat导出的数据库脚本&#xff0c;在docker初始化运行mysql容器时&#xff0c;导入到存储过程时出错。 ERROR 1064 (42000) at line 2452: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for t…

面经-数据库

1.MySQL 1.1什么是MySQL? MySQL 是⼀种关系型数据库&#xff0c;在 Java 企业级开发中⾮常常⽤&#xff0c;因为 MySQL 是开源免费的&#xff0c;并 且⽅便扩展。阿⾥巴巴数据库系统也⼤量⽤到了 MySQL &#xff0c;因此它的稳定性是有保障的。 MySQL 是开放源代码的&…

Generator 是怎么样使用的以及各个阶段的变化如何

Generators 是 JavaScript 中一种特殊类型的函数&#xff0c;可以在执行过程中暂停&#xff0c;并且在需要时恢复执行。它们是通过 function* 关键字来定义的。Generator 函数返回的是一个迭代器对象&#xff0c;通过调用该迭代器对象的 next() 方法来控制函数的执行。在调用 n…

houdini 20视窗卡bug脚本开发小记

前情提要&#xff1a;houdini20面世后&#xff0c;体验非常糟糕的就是动不动资产显示不更新了。官方提供重置视窗命令&#xff0c;但设置好的拍屏参数及视窗设置也都会被重置&#xff0c;也就是解决了一个问题又带了一个问题。 所以写个脚本优化一下&#xff0c;大概思路也就是…

微尺度气象数值模拟—大涡模拟技术【WRF-LES模拟、PALM模拟】

针对微尺度气象的复杂性&#xff0c;大涡模拟&#xff08;LES&#xff09;提供了一种无可比拟的解决方案。微尺度气象学涉及对小范围内的大气过程进行精确模拟&#xff0c;这些过程往往与天气模式、地形影响和人为因素如城市布局紧密相关。在这种规模上&#xff0c;传统的气象模…

微信小程序-插槽slot

一.插槽slot 在页面使用自定义组件的时候&#xff0c;如果在自定义组件里面写子组件&#xff0c;子组件的内容无法显示。 <custom01> <text slotslot-top>你好&#xff0c;上方组件</text> 你好&#xff0c;组件 <text slotslot-bottom>你好&#xf…

elasticsearch底层核心组件

Elasticsearch是一个高度可扩展的开源全文搜索和分析引擎&#xff0c;它基于Apache Lucene构建&#xff0c;并添加了分布式特性。以下是Elasticsearch的一些底层核心组件&#xff1a; 1. **Lucene**&#xff1a; - Elasticsearch基于Apache Lucene&#xff0c;一个高性能的…

三层限流:为高并发系统保驾护航

文章目录 前言第一层限流&#xff1a;Nginx 层面的 IP 限流第二层限流&#xff1a;Gateway 对用户层级的限流第三层限流&#xff1a;微服务限流分布式限流和单机限流的优缺点&#xff1a;1、RateLimiter的使用2、Hystrix的使用3、Redislua脚本4、使用Sentinel 关于为何同时使用…

做PFMEA的经验之谈

在制造业的广袤领域中&#xff0c;PFMEA&#xff08;过程失效模式与影响分析&#xff09;是一项至关重要的工具&#xff0c;它用于识别并评估生产过程中的潜在失效模式&#xff0c;以及这些失效模式可能导致的后果。作为一名在制造业有多年经验的专业机构&#xff0c;深圳天行健…

安装KB5039212更新卡在25% 或者 96% 进度

系统之家7月1日消息&#xff0c;微软在6月11日的补丁星期二活动中&#xff0c;为Windows 11系统推出了KB5039212更新。然而&#xff0c;部分用户在Windows社区中反映&#xff0c;安装过程中出现失败&#xff0c;进度条在25%或96%时卡住。对于遇到此类问题的Windows 11用户&…

Java中通过URL发送json

发送json的代码 package service.WxMessages;import com.alibaba.fastjson2.JSONObject;import java.io.OutputStream; import java.net.HttpURLConnection; import java.net.URL; import java.nio.charset.StandardCharsets; import java.util.Map;public class tokenSendSer…

【论文复现|智能算法改进】基于自适应动态鲸鱼优化算法的路径规划研究

目录 1.算法原理2.改进点3.结果展示4.参考文献5.代码获取 1.算法原理 SCI二区|鲸鱼优化算法&#xff08;WOA&#xff09;原理及实现【附完整Matlab代码】 2.改进点 非线性收敛因子 WOA 主要通过控制系数向量 A 来决定鲸鱼是搜索猎物还是捕获猎物&#xff0c;即系数向量 A 可…

【LLM 论文】Self-Refine:使用 feedback 迭代修正 LLM 的 output

论文&#xff1a;Self-Refine: Iterative Refinement with Self-Feedback ⭐⭐⭐⭐ CMU, NeurIPS 2023, arXiv:2303.17651 Code: https://selfrefine.info/ 论文速读 本文提出了 Self-Refine 的 prompt 策略&#xff0c;可以在无需额外训练的情况下&#xff0c;在下游任务上产…

【FFmpeg】avcodec_alloc_context3函数

目录 1.avcodec_alloc_context3 FFmpeg相关记录&#xff1a; 示例工程&#xff1a; 【FFmpeg】调用ffmpeg库实现264软编 【FFmpeg】调用ffmpeg库实现264软解 【FFmpeg】调用ffmpeg库进行RTMP推流和拉流 【FFmpeg】调用ffmpeg库进行SDL2解码后渲染 流程分析&#xff1a; 【FFm…

蒂升电梯职业性格和Verify认知能力SHL测评答题攻略及薪资待遇解密!

​一、蒂升电梯职业性格和认知能力测评考什么 您好&#xff01;蒂升电梯公司邀请您参加的OPQ职业性格测评和Verify认知能力测评是两种常见的评估工具&#xff0c;用于帮助了解个人的职场性格特点和认知能力。 OPQ职业性格测评 这是一种性格测试&#xff0c;通常用于评估个人在…

PostgreSQL介绍与安装

一、PostgreSQL数据库介绍 1、什么是数据库&#xff1f; 数据库&#xff08;Database&#xff09;是按照数据结构来组织、存储和管理数据的仓库。每个数据库都有一个或多个不同的 API 用于创建&#xff0c;访问&#xff0c;管理&#xff0c;搜索和复制所保存的数据。 我们也…