Codeforces Round #616 (Div. 2) 题解
2024-10-08 15:57:43
A. Even But Not Even
题意:
定义一个数所有位置的和为偶数它本身不为偶数的数为ebne,现在给你一个数字字符串,你可以删除任意位置上的数字使其变为ebne输出任意改变后的结果,如果不能则输出-1
思路:
比赛的时候分类讨论过的。。。真是愚蠢至极妈的
其实只要看字符串中奇数的个数就好了,如果小于两个则肯定不行,如果大于两个则直接按相对位置输出任意两个就好了
#include<iostream>
#include<algorithm>
#include<string>
using namespace std;
int main()
{
int t,n;
scanf("%d",&t);
while(t--){
string a,b;
cin>>n>>a;
for(int i=;i<n;i++){
if((a[i]-'')%)
b+=a[i];
}
if(b.length()<) cout<<"-1"<<endl;
else cout<<b.substr(,)<<endl;
}
return ;
}
B. Array Sharpening
题意:
给你一个数组,你可以对任意位置上的元素进行任意次的减1操作(不能使元素小于0),使得该数组变成一个先严格递增再严格递减的数组(也可以只升不降,只降不升)
思路:
我们考虑将每个元素都作为转折点尝试,如果a[i]<min(i,n-i-1)的话该序列一定不行,最后还需特判一下n为偶数n/2-1与n/2是否相同
#include<iostream>
#include<algorithm>
using namespace std;
const int maxn=3e5+;
int a[maxn];
int main()
{
int t,n;
scanf("%d",&t);
while(t--){
scanf("%d",&n);
int flag=;
for(int i=;i<n;i++){
scanf("%d",&a[i]);
if(a[i]<min(i,n--i)) flag=;
}
if(n%==) if(a[n/-]==n/-&&a[n/]==a[n/-]) flag=;
if(flag) cout<<"No"<<endl;
else cout<<"Yes"<<endl;
}
return ;
}
C. Mind Control
题意:
n个元素,n个人轮流取数,可以取数组头或尾元素,你在第m轮取,并且你可以控制k个人取什么元素,问你能取得最大元素是多少(前面的人不一定都取最大的)
思路:
枚举一下现在强制多少人站队听他的,遍历剩下不听他的人的人数,然后把从后往前和从前往后的最大值的最小值的最大值算出来就可以了
#include<iostream>
#include<algorithm>
#define inf 0x3f3f3f3f
using namespace std;
const int maxn=;
int a[maxn],t,n,m,k;
int main()
{
scanf("%d",&t);
while(t--){
scanf("%d%d%d",&n,&m,&k);
for(int i=;i<n;i++) scanf("%d",&a[i]);
k=min(m-,k);
int ans=-inf;
for(int i=;i<=k;i++){
int x=inf;
for(int j=;j<m-k;j++) x=min(x,max(a[i+j],a[n+i+j-m]));
ans=max(ans,x);
}
cout<<ans<<endl;
}
return ;
}
最新文章
- 安全防范:nginx下git引发的隐私泄露问题
- SemanticZoom配合GridView组件的使用关键点
- 1.1 STL 概述
- 7.3.1 Establishing a Backup Policy
- 16个不错的git别名
- oracle commit之后的数据回滚
- 自己对WSO2 ESB 见解
- opals 开发记录
- poj 2513 Colored Sticks (trie 树)
- React.js终探(五)
- Inno Setup connection to the database and create
- TIMESTAMP和DATETIME哪个好
- 织梦5.7sp1最新问题:后台不显示编辑器
- 机智的造假->;sql给Echart提供数据
- JDK8 HashMap--removeNode()移除节点方法
- AtCoder arc061C Snuke&#39;s Subway Trip
- [P1082][NOIP2012] 同余方程 (扩展欧几里得/乘法逆元)
- zabbix3.x自动发现主机
- 利用SSH反向隧道,连接内网服务器
- String类的常用方法总结
热门文章
- ping命令工具:同时ping多个IP
- synchronized和volatile关键字
- 解决vue更新默认值时出现的闪屏问题
- webpack打包文件中的@符号表示什么意思
- C# 增加时间的三个方法
- Linux和云供应商Red Hat被IBM以34亿美元的价格收购
- IAR STM32F10x_StdPeriph_Driver 3.4转3.6.1库
- 9.2.1 hadoop mapreduce任务输出的默认排序
- Python递归函数如何写?正确的Python递归函数用法!
- 前端学习笔记系列一:2 Vue的单文件组件