基本全是水题

第一题水,不过有hack点,先增后不变再减

#include<map>
#include<set>
#include<cmath>
#include<queue>
#include<stack>
#include<vector>
#include<cstdio>
#include<cassert>
#include<iomanip>
#include<cstdlib>
#include<cstring>
#include<iostream>
#include<algorithm>
#define pi acos(-1)
#define ll long long
#define mod 1000000007
#define ls l,m,rt<<1
#define rs m+1,r,rt<<1|1
#pragma comment(linker, "/STACK:1024000000,1024000000") using namespace std; const double g=10.0,eps=1e-;
const int N=+,maxn=+,inf=0x3f3f3f; int main()
{
ios::sync_with_stdio(false);
cin.tie();
int n;
cin>>n;
bool f=;
int last,bh=;
for(int i=;i<n;i++)
{
int a;
cin>>a;
if(i==)last=a;
else
{
if(last<a)
{
if(bh==)last=a;
else if(bh==)f=;
else f=;
}
else if(last==a)
{
if(bh==)bh=,last=a;
else if(bh==)last=a;
else f=;
}
else if(last>a)
{
if(bh==)bh=,last=a;
else if(bh==)bh=,last=a;
else last=a;
}
}
}
if(f)cout<<"NO"<<endl;
else cout<<"YES"<<endl;
return ;
}

A

第二题更水,6分钟1a,maphash一下就行了

#include<map>
#include<set>
#include<cmath>
#include<queue>
#include<stack>
#include<vector>
#include<cstdio>
#include<cassert>
#include<iomanip>
#include<cstdlib>
#include<cstring>
#include<iostream>
#include<algorithm>
#define pi acos(-1)
#define ll long long
#define mod 1000000007
#define ls l,m,rt<<1
#define rs m+1,r,rt<<1|1
#pragma comment(linker, "/STACK:1024000000,1024000000") using namespace std; const double g=10.0,eps=1e-;
const int N=+,maxn=+,inf=0x3f3f3f; map<char,char>m;
int main()
{
ios::sync_with_stdio(false);
cin.tie();
string s,p,t;
cin>>s>>p>>t;
for(int i=;i<s.size();i++)
{
m[s[i]]=p[i];
}
for(int i=;i<t.size();i++)
{
if('a'<=t[i]&&t[i]<='z')cout<<m[t[i]];
else if('A'<=t[i]&&t[i]<='Z')cout<<(char)(m[t[i]-'A'+'a']+'A'-'a');
else cout<<t[i];
}
cout<<endl;
return ;
}

B

第三题想法题,先sort,然后找间距一一对应起来就可以 了(刚开始想的是求出值来,太蠢了)

#include<map>
#include<set>
#include<cmath>
#include<queue>
#include<stack>
#include<vector>
#include<cstdio>
#include<cassert>
#include<iomanip>
#include<cstdlib>
#include<cstring>
#include<iostream>
#include<algorithm>
#define pi acos(-1)
#define ll long long
#define mod 1000000007
#define ls l,m,rt<<1
#define rs m+1,r,rt<<1|1
#pragma comment(linker, "/STACK:1024000000,1024000000") using namespace std; const double g=10.0,eps=1e-;
const int N=+,maxn=+,inf=0x3f3f3f; ll a[N],b[N];
ll sum[N];
set<ll>ans;
int main()
{
ios::sync_with_stdio(false);
cin.tie();
ll k,n;
cin>>k>>n;
for(ll i=;i<k;i++)
{
cin>>a[i];
if(i==)sum[i]=a[i];
else sum[i]=sum[i-]+a[i];
}
for(ll i=;i<n;i++)cin>>b[i];
sort(b,b+n);
sort(sum,sum+k);
int p=b[];
for(int i=;i<n;i++)b[i]-=p;
ll i=;
for(int i=;i<k;i++)
{
int res=,p=;
for(int j=i;j<k;j++)
{
if(sum[j]-sum[i]==b[p])
p++;
if(p>=n)
{
ans.insert(sum[i]);
break;
}
}
}
cout<<ans.size()<<endl;
return ;
}

C

第四题,给一堆人,和一堆钥匙的坐标,每个人拿钥匙去办公室,求最小时间,sort一下,然后二分最小时间,每次判断的时候还是枚举两个数组进行匹配

#include<map>
#include<set>
#include<cmath>
#include<queue>
#include<stack>
#include<vector>
#include<cstdio>
#include<cassert>
#include<iomanip>
#include<cstdlib>
#include<cstring>
#include<iostream>
#include<algorithm>
#define pi acos(-1)
#define ll long long
#define mod 1000000007
#define ls l,m,rt<<1
#define rs m+1,r,rt<<1|1
#pragma comment(linker, "/STACK:1024000000,1024000000") using namespace std; const double g=10.0,eps=1e-;
const int N=+,maxn=+,inf=0x3f3f3f; ll a[N],b[N],p,n,k;
bool ok(ll i,ll j,ll x)
{
return abs(a[i]-b[j])+abs(b[j]-p)<=x;
}
bool check(ll x)
{
ll j=;
for(int i=;i<n;i++)
{
while(!ok(i,j,x)){
j++;
}
if(j>=k)return ;
j++;
}
return ;
}
int main()
{
ios::sync_with_stdio(false);
cin.tie();
cin>>n>>k>>p;
for(ll i=;i<n;i++)cin>>a[i];
for(ll i=;i<k;i++)cin>>b[i];
sort(a,a+n);
sort(b,b+k);
ll l=,r=2e9+;
for(int i=;i<;i++)
{
ll m=(l+r)/;
if(check(m))r=m;
else l=m;
}
while(check(l))l--;
cout<<l+<<endl;
return ;
}

D

第5.6先留坑

话说这场只a了两题,还好比较稳,没被hack,还涨了85分>.<

Codeforces Round #424的更多相关文章

  1. Codeforces Round #424 (Div. 2, rated, based on VK Cup Finals)

    http://codeforces.com/contest/831 A. Unimodal Array time limit per test 1 second memory limit per te ...

  2. Codeforces Round #424 (Div. 2, rated, based on VK Cup Finals)A,B,C

    A:链接:http://codeforces.com/contest/831/problem/A 解题思路: 从前往后分别统计递增,相等,递减序列的长度,如果最后长度和原序列长度相等那么就输出yes: ...

  3. Codeforces Round #424 (Div. 2, rated, based on VK Cup Finals) Problem F (Codeforces 831F) - 数论 - 暴力

    题目传送门 传送门I 传送门II 传送门III 题目大意 求一个满足$d\sum_{i = 1}^{n} \left \lceil \frac{a_i}{d} \right \rceil - \sum ...

  4. Codeforces Round #424 (Div. 2, rated, based on VK Cup Finals) Problem D (Codeforces 831D) - 贪心 - 二分答案 - 动态规划

    There are n people and k keys on a straight line. Every person wants to get to the office which is l ...

  5. Codeforces Round #424 (Div. 2, rated, based on VK Cup Finals) Problem E (Codeforces 831E) - 线段树 - 树状数组

    Vasily has a deck of cards consisting of n cards. There is an integer on each of the cards, this int ...

  6. Codeforces Round #424 (Div. 2, rated, based on VK Cup Finals) Problem C (Codeforces 831C) - 暴力 - 二分法

    Polycarp watched TV-show where k jury members one by one rated a participant by adding him a certain ...

  7. Codeforces Round #424 (Div. 2, rated, based on VK Cup Finals) Problem A - B

    Array of integers is unimodal, if: it is strictly increasing in the beginning; after that it is cons ...

  8. 【Codeforces Round #424 (Div. 2) A】Unimodal Array

    [Link]:http://codeforces.com/contest/831/problem/A [Description] 让你判断一个数列是不是这样一个数列: 一开始是严格上升 然后开始全都是 ...

  9. 【Codeforces Round #424 (Div. 2) B】Keyboard Layouts

    [Link]:http://codeforces.com/contest/831/problem/B [Description] 两个键盘的字母的位置不一样; 数字键的位置一样; 告诉你第一个键盘按某 ...

  10. 【Codeforces Round #424 (Div. 2) C】Jury Marks

    [Link]:http://codeforces.com/contest/831/problem/C [Description] 有一个人参加一个比赛; 他一开始有一个初始分数x; 有k个评委要依次对 ...

随机推荐

  1. Go实现查找目录下(包括子目录)替换文件内容

    [功能] 按指定的目录查找出文件,如果有子目录,子目录也将进行搜索,将其中的文件内容进行替换. [缺陷] 1. 没有过滤出文本文件 2. 当文件过大时,效率不高 [代码] package main i ...

  2. TWebBrowser: Determine when a page with Frames is completed

    TWebBrowser: Determine when a page with Frames is completed 6 comments. Current rating: (3 votes). L ...

  3. [笔记] Ubuntu 18.04安装cuda 10及cudnn 7流程

    安装环境 OS:Ubuntu 18.04 64 bit 显卡:NVidia GTX 1080 任务:安装 CUDA 10及cuDNN 7 工具下载 NVidia官网下载下列文件: CUDA 10:cu ...

  4. XDU 1111

    对于一排n个正方形,有f(n)种方案达成目标,若第n个块是白色,则有f(n-1)种方案,若第n个块是黑色,则第n-1个块必为白色,那么有f(n-2)+n-2种方案. 则f(n)=f(n-1)+f(n- ...

  5. Java Hashtable详细介绍和使用示例

    ①对Hashtable有个整体认识 和HashMap一样,Hashtable 也是一个散列表,它存储的内容是键值对(key-value)映射.Hashtable 继承于Dictionary,实现了Ma ...

  6. [2010-12-28 20:39]ActionScript3.0中用要的公式

    一.质点的运动(1)——直线运动 1)匀变速直线运动 1.平均速度V平=s/t(定义式) 2.有用推论Vt2-Vo2=2as 3.中间时刻速度Vt/2=V平=(Vt+Vo)/2 4.末速度Vt=Vo+ ...

  7. selenium 之定位方法

    1 id 定位 driver.find_element_by_id() HTML 规定id 属性在HTML 文档中必须是唯一的.这类似于公民的身份证号,具有很强的唯一性 from selenium i ...

  8. xxxx interview问题解读与总结

    1. 要使线程从running到waiting状态,我们需要做些什么? 线程的状态及转换. 关联技术:http://www.cnblogs.com/kisf/p/6952524.html 2. spr ...

  9. linux把软件安装到指定目录

    1.安装包带configure文件的: ./configure --prefix=安装目录 2.安装包不带configure文件,只带MakeFile 2.1 make install PREFIX= ...

  10. linux安全第一周总结——20135227黄晓妍

    实验部分: 我将源代码做了修改,将其中一个数字修改为我学号27 2.在实验楼环境下将其保存为text.c并将其编译,得到text.s 3.将.开头的多余的语句删去了之后,我得到了32位环境的汇编代码 ...