博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Codeforces Round #424 (Div. 2)
阅读量:5919 次
发布时间:2019-06-19

本文共 2222 字,大约阅读时间需要 7 分钟。

D题fst了,生无可恋。第二场rated的CF,打得精神恍惚

A. Unimodal Array
题意:判断数列是否是单峰的。
像题意那样分为三个阶段随便判一判就好了
#include
#include
#include
#include
using namespace std;int n,x[105],part=1;bool f=1;int main(){ scanf("%d",&n); for(int i=1;i<=n;i++) { scanf("%d",&x[i]); if(part==1) {
if(x[i]==x[i-1])part=2;else if(x[i]
x[i-1]){f=0;break;}} else if(part==3) {
if(x[i]>x[i-1]){f=0;break;}else if(x[i]==x[i-1]){f=0;break;}} } if(f)printf("YES\n"); else printf("NO\n"); return 0;}
B. Keyboard Layouts
题意:给出一个26个字母的对应方式, 将给定串由模式1转为模式2
模拟,判断一下大小写
#include
#include
#include
#include
using namespace std;char a[26],b[26],s[1001];int map[26];int main(){ scanf("%s%s%s",a,b,s); for(int i=0;i<26;i++) map[a[i]-'a']=b[i]-'a'; for(int i=0;i
='a'&&s[i]<='z')cout<<(char)(map[(int)(s[i]-'a')]+'a'); else if(s[i]>='A'&&s[i]<='Z')cout<<(char)(map[(int)(s[i]-'A')]+'A'); else cout<
D. Office Keys
题意:给出n个人,k把钥匙,和办公室所在位置,每个人都需拿到一把钥匙再去办公室,最小化他们之中的最大路程
没错…这题我fst了,二分边界开小了,并且某处忘记了j++,心痛
二分答案,然后贪心思路:
直觉上可以知道人与钥匙一一对应是从左到右的,根据这点判断是否可行
#include
#include
#include
#include
#include
typedef long long LL; int n,k,p,a[1005],b[2005];using namespace std;LL dis(LL x,LL y){
return abs(y-x)+abs(p-y);}bool check(LL mid){ int j=1; for(int i=1;i<=n;i++,j++) { while(j<=k&&dis(a[i],b[j])>mid)++j; if(j>k)return false; } return true;}int main(){ scanf("%d%d%d",&n,&k,&p); for(int i=1;i<=n;i++)scanf("%d",&a[i]); for(int i=1;i<=k;i++)scanf("%d",&b[i]); sort(a+1,a+1+n),sort(b+1,b+1+k); LL l=0,r=2000000000,ans; while(l<=r) { LL mid=(l+r)>>1; if(check(mid))ans=mid,r=mid-1; else l=mid+1; } printf("%I64d\n",ans); return 0;}

转载于:https://www.cnblogs.com/Zars19/p/7173064.html

你可能感兴趣的文章
Java实现的冒泡排序
查看>>
LeetCode - Medium - Add Two Numbers
查看>>
检查系统中新增加的带有suid或者sgid位权限的程序文件
查看>>
APP中的第三方“支付”功能该如何测试
查看>>
HDU 1907
查看>>
UVa10269 Adventure of Super Mario
查看>>
公司内部openStack环境信息
查看>>
PHP的MySQL扩展:PHP访问MySQL的常用扩展函数
查看>>
Algs4-2.3.7计算快排子数组数量
查看>>
数值积分中的辛普森方法及其误差估计
查看>>
Web service (一) 原理和项目开发实战
查看>>
最新鲜最详细的Android SDK下载安装及配置教程
查看>>
深入分析Java Web技术(2) IO
查看>>
LeetCode: 57. Insert Interval(Hard)
查看>>
sql server 汉字的长度
查看>>
创业不是 闹着玩的,水很深,
查看>>
JNI 与 NDK 的关系 以及实现
查看>>
Spring Data(二)查询
查看>>
greenplum(postgresql) 数据字典
查看>>
架构师速成6.9-如何写好代码 分类: 架构师速成 ...
查看>>