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

8.23CF训练题解

A题Painting the Ribbon题解
其实这是一个经典的数学思维题 ,飘带有N段,每段可以着色,有M种颜色可以选择,另一个人有K次修改颜色的机会,问有没有方式使得飘带在K次修改后都无法变为单一颜色 ?

其实最简单的方法就是1–M颜色以此涂色,这样子各种颜色出现的又多又均衡 ,那么另一个人只能选择最多的一种颜色作为最终颜色,其他颜色全部修改。经过计算可以知道最多的那种颜色会有
N/M向上取整个,所以需要N- 向上取整(N/M)次机会才能变为单一颜色

#include<bits/stdc++.h>
using namespace std;
int main() {int a;cin>>a;for(int i=1;i<=a;i++){int n,m,k;int d=1;int s=0;cin>>n>>m>>k;d=n-(n/m);if(n%m!=0){d--;}if(d<=k){cout<<"NO";}else{cout<<"YES";}cout<<endl;}return 0;
}

B - Special Characters
简单题,按题目意思构造即可

#include<bits/stdc++.h>
using namespace std;
int main() {int a;cin>>a;for(int i=1;i<=a;i++){int b;cin>>b;int c=0;if(b%2==1){cout<<"NO"<<endl;}else{cout<<"YES"<<endl;while(c!=b/2){if(c%2==1){cout<<"BB";}else{cout<<"AA";}c++;}cout<<endl;}}return 0;
}

C题题解
注意一开始给我们的就是美丽的数组,说明它能够最终变为一样的
我们根据题目的规则来思考,能变成最终一样的,一定能得到首元素跟末尾元素是相同的结论
因此我们的删除方式可以有以下方法:
1 删除开头一段连续的A[1]长度
2 删除末尾一段连续的A[1]长度
3 寻找两个不等于A1的值,删除他们中间的所有数字
以上三种方式都可以让数组变得不美丽 求最短即可

#include<bits/stdc++.h>
using namespace std;
int A[300010];
int main() {int a;cin>>a;for(int i=1;i<=a;i++){int b;cin>>b;int len=0;int x=1e9;for(int j=1;j<=b;j++){cin>>A[j];if(A[j]==A[1]){len++;}else{x=min(x,len);len=0;}}x=min(x,len);if(x==b){cout<<"-1"<<endl;}else{cout<<x<<endl;}}return 0;
}

D题题解
每个数字其实要么拆,要么不拆
我们考虑倒着处理,先把A[n]存进去,不拆,因为A[n]是最后一个元素,不拆它相当于后方有个较大的。对于每个数字,如果A[i]< 上一次存的数,那么我们不拆直接放进去,否则就正常拆掉,最终检查是不是按顺序来的

#include<bits/stdc++.h>
using namespace std;
int A[100];
int B[1000];
int main() {int a;cin>>a;for(int i=1;i<=a;i++){int b;cin>>b;for(int j=1;j<=b;j++){cin>>A[j];}int len=0;B[++len]=A[b];for(int j=b-1;j>=1;j--){if(A[j]<=B[len]){B[++len]=A[j];}else{B[++len]=A[j]%10;B[++len]=A[j]/10%10;}}int c;bool ok=true;for(int j=2;j<=len;j++){c=B[j-1];if(c<B[j]){cout<<"NO"<<endl;ok=false;break;}}if(ok==true){cout<<"YES"<<endl;}}return 0;
}

E题题解

#include<bits/stdc++.h> 
#define ll long long
using namespace std;
const int N=2e5+5;
char a[N],b[N];
int T;
int main(){cin>>T;while(T--){cin>>a>>b;int lena=strlen(a);int lenb=strlen(b);int op=0;for( int i=0;i<lena;i++ ){if(op==0){if(a[i]<b[i]) swap(a[i],b[i]);if(a[i]>b[i]) op=1;}else if(op==1){if(a[i]>b[i]) swap(a[i],b[i]);}}cout<<a<<'\n'<<b<<'\n';}return 0;
}

F题题解
模拟题,按题目意思写就行了 控制好坐标位置

#include<bits/stdc++.h>
using namespace std;
int n;char s[2][200010];
void Main(){cin>>n;scanf("%s%s",s[0]+1,s[1]+1);int f=0;for(int i=2;i<=n;i+=2)if(s[0][i]=='<'&&(s[1][i-1]=='<'||i<n-1&&s[1][i+1]=='<')){f=1;break;}if(f)cout<<"NO\n";else cout<<"YES\n";
}signed main(){int T;cin>>T;while(T--)Main();return 0;
}

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 007、架构_配置文件_GTM(gtm.ini)
  • 深度理解指针(3)
  • 51单片机控制可控硅调温程序
  • webpack--webpack的启用
  • static关键字
  • pyannote源码阅读(一)
  • 英国政府停止使用人工智能
  • Linux 命令重定向介绍
  • electron 两个渲染进程之间通信
  • 教育行业,等保之重
  • 2534. 乘方 [CSP-J 2022]
  • WIN/MAC 图像处理软件Adobe Photoshop PS2024软件下载安装
  • Android开发语言Kotlin简介
  • 硬件寄存器的简单理解
  • http重要的状态码【精简版】
  • Google 是如何开发 Web 框架的
  • 3.7、@ResponseBody 和 @RestController
  • ABAP的include关键字,Java的import, C的include和C4C ABSL 的import比较
  • Hibernate【inverse和cascade属性】知识要点
  • idea + plantuml 画流程图
  • k8s 面向应用开发者的基础命令
  • KMP算法及优化
  • Mybatis初体验
  • NSTimer学习笔记
  • SegmentFault 技术周刊 Vol.27 - Git 学习宝典:程序员走江湖必备
  • 从零开始学习部署
  • 大主子表关联的性能优化方法
  • 复杂数据处理
  • 面试遇到的一些题
  • 前端之Sass/Scss实战笔记
  • 无服务器化是企业 IT 架构的未来吗?
  • 小程序滚动组件,左边导航栏与右边内容联动效果实现
  • 应用生命周期终极 DevOps 工具包
  • ​DB-Engines 12月数据库排名: PostgreSQL有望获得「2020年度数据库」荣誉?
  • #etcd#安装时出错
  • (1)Hilt的基本概念和使用
  • (react踩过的坑)Antd Select(设置了labelInValue)在FormItem中initialValue的问题
  • (Spark3.2.0)Spark SQL 初探: 使用大数据分析2000万KF数据
  • (补充)IDEA项目结构
  • (附源码)python旅游推荐系统 毕业设计 250623
  • (附源码)springboot电竞专题网站 毕业设计 641314
  • (没学懂,待填坑)【动态规划】数位动态规划
  • (原+转)Ubuntu16.04软件中心闪退及wifi消失
  • (源码分析)springsecurity认证授权
  • (转)C#调用WebService 基础
  • (转)母版页和相对路径
  • . ./ bash dash source 这五种执行shell脚本方式 区别
  • .apk文件,IIS不支持下载解决
  • .htaccess 强制https 单独排除某个目录
  • .Net Framework 4.x 程序到底运行在哪个 CLR 版本之上
  • .Net 访问电子邮箱-LumiSoft.Net,好用
  • .Net 基于.Net8开发的一个Asp.Net Core Webapi小型易用框架
  • .net 流——流的类型体系简单介绍
  • .Net 中Partitioner static与dynamic的性能对比
  • .NET程序集编辑器/调试器 dnSpy 使用介绍