AtCoder Regular Contest 082
我都出了F了……结果并没有出E……atcoder让我差4分上橙是啥意思啊……
C - Together
题意:把每个数加1或减1或不变求最大众数。
#include<cstdio>
#include<algorithm>
using namespace std; int read_p,read_ca;
inline int read(){
read_p=;read_ca=getchar();
while(read_ca<''||read_ca>'') read_ca=getchar();
while(read_ca>=''&&read_ca<='') read_p=read_p*+read_ca-,read_ca=getchar();
return read_p;
}
int t[],n,a;
int main(){
n=read();
for (int i=;i<=n;i++){
a=read();
t[a]++;t[a+]++;t[a+]++;
}
a=;
for (int i=;i<=;i++) if (t[i]>a) a=t[i];
printf("%d\n",a);
}
D - Derangement
题意:求把一个排列变成错排的最少操作数,操作是交换相邻俩位置。
#include<cstdio>
#include<algorithm>
using namespace std; int read_p,read_ca;
inline int read(){
read_p=;read_ca=getchar();
while(read_ca<''||read_ca>'') read_ca=getchar();
while(read_ca>=''&&read_ca<='') read_p=read_p*+read_ca-,read_ca=getchar();
return read_p;
}
int t[],n,a=;
int main(){
n=read();
for (int i=;i<=n;i++){
t[i]=read();
}
for (int i=;i<n;i++)
if (t[i]==i) a++,swap(t[i],t[i+]);
if (t[n]==n) a++;
printf("%d\n",a);
}
E - ConvexScore
题意:一个凸包的价值为其$2^{内部点数}$求所以凸包价值之和。
题解:窝好蠢啊,居然没想到这个……$2^{内部点数}$其实就是把每个集合都统计了一遍,这样就只剩下直线的集合没被统计了。
代码还没写(不想补题)
F - Sandglass
题意:一沙漏初始上边那个为a,下边为X-a,每秒上边向下边掉一个,一些时刻会把沙漏倒过来,问某时刻的状态。
题解:反正就是个分段函数,而且只有3段。
#include<cstdio>
#include<algorithm>
#define MN 110000
#define int long long
using namespace std; int read_p,read_ca;
inline int read(){
read_p=;read_ca=getchar();
while(read_ca<''||read_ca>'') read_ca=getchar();
while(read_ca>=''&&read_ca<='') read_p=read_p*+read_ca-,read_ca=getchar();
return read_p;
}
int n,m,X,K,T[MN],la=,Q,t,a,l[MN],r[MN],L[MN],R[MN];
signed main(){
X=read();
K=read();
l[]=;L[]=;r[]=X;R[]=X;
for (int i=;i<=K;i++){
a=read();
T[i]=a;
l[i]=l[i-];r[i]=r[i-];
L[i]=L[i-]-(a-la);
R[i]=R[i-]-(a-la);
if (L[i]<=R[i])
if (R[i]<=){
l[i]=;L[i]=X;r[i]=;R[i]=X;
}else{
if (L[i]<)
l[i]-=L[i],
L[i]=; L[i]=X-L[i];R[i]=X-R[i];
}else
if (L[i]<=){
l[i]=;L[i]=X;r[i]=;R[i]=X;
}else{
if (R[i]<)
r[i]+=R[i],
R[i]=; L[i]=X-L[i];R[i]=X-R[i];
}
la=a;
} /*for (int i=0;i<=K;i++)
printf("%d %d %d %d %d\n",i,l[i],r[i],L[i],R[i]);*/
Q=read();
for (int i=;i<=Q;i++){
t=read();a=read();
int _l=,_r=K,mid;
while (_l<_r){
if (T[mid=_l+_r+>>]<=t) _l=mid;else _r=mid-;
}
t-=T[_l];
if (a<=l[_l]) a=L[_l];else if (a>=r[_l]) a=R[_l];else if (L[_l]==R[_l]) a=L[_l];else
if (L[_l]<R[_l]) a=L[_l]+(a-l[_l]);else a=L[_l]-(a-l[_l]); a-=t;
if (a<) a=; if (_l&) a=X-a; printf("%lld\n",a);
}
}
AtCoder Regular Contest 082的更多相关文章
- AtCoder Regular Contest 082 D Derangement
AtCoder Regular Contest 082 D Derangement 与下标相同与下个交换就好了.... Define a sequence of ’o’ and ’x’ of lengt ...
- AtCoder Regular Contest 082 (ARC082) E - ConvexScore 计算几何 计数
原文链接http://www.cnblogs.com/zhouzhendong/p/8934254.html 题目传送门 - ARC082 E 题意 给定二维平面上的$n$个点,定义全集为那$n$个点 ...
- 【推导】【模拟】AtCoder Regular Contest 082 F - Sandglass
题意:有个沙漏,一开始bulb A在上,bulb B在下,A内有a数量的沙子,每一秒会向下掉落1.然后在K个时间点ri,会将沙漏倒置.然后又有m个询问,每次给a一个赋值ai,然后询问你在ti时刻,bu ...
- 【计算几何】【推导】【补集转化】AtCoder Regular Contest 082 E - ConvexScore
题意:平面上给你N个点.对于一个“凸多边形点集”(凸多边形点集被定义为一个其所有点恰好能形成凸多边形的点集)而言,其对答案的贡献是2^(N个点内在该凸多边形点集形成的凸包内的点数 - 该凸多边形点集的 ...
- 【推导】AtCoder Regular Contest 082 D - Derangement
题意:给你一个排列a,每次可以交换相邻的两个数.让你用最少的交换次数使得a[i] != i. 对于两个相邻的a[i]==i的数,那么一次交换必然可以使得它们的a[i]都不等于i. 对于两个相邻的,其中 ...
- AtCoder Regular Contest 082 E
Problem Statement You are given N points (xi,yi) located on a two-dimensional plane. Consider a subs ...
- AtCoder Regular Contest 082 F
Problem Statement We have a sandglass consisting of two bulbs, bulb A and bulb B. These bulbs contai ...
- AtCoder Regular Contest 082 ABCD
A #include<bits/stdc++.h> using namespace std; ]; int n,m; int main(){ cin>>n>>m; ...
- 【AtCoder Regular Contest 082 F】Sandglass
[链接]点击打开链接 [题意] 你有一个沙漏. 沙漏里面总共有X单位的沙子. 沙漏分A,B上下两个部分. 沙漏从上半部分漏沙子到下半部分. 每个时间单位漏1单位的沙子. 一开始A部分在上面.然后在r1 ...
随机推荐
- mongodb 复制集
mongodb 复制集 复制集简介 Mongodb复制集由一组Mongod实例(进程)组成,包含一个Primary节点和多个Secondary节点,Mongodb Driver(客户端)的所有数据都写 ...
- Oracle11g不能导出空表问题
ORACLE 11g 用exp命令导出库文件备份时,发现只能导出来一部分表而且不提示错误,之前找不到解决方案只能把没导出来的表重新建建立.后来发现是所有的空表都没有导出来.于是想好好查查,因为在以前的 ...
- Python爬虫——爬豆瓣登录页面
直接上代码 import urllib.request import http.cookiejar from lxml import etree # from spiderImg import get ...
- Elasticsearch5.4常见问题总结
最近项目中用到了Elasticsearch5.4(ES)是比较新的一个版本,使用的过程中出现了很多的问题,很是头疼,但是问题最终还是解决掉了. 问题一:ESClient获取慢,并且不能获取Client ...
- CSS 去掉inline-block间隙的几种方法
最近做移动端页面时,经常会用到inline-block元素来布局,但无可避免都会遇到一个问题,就是inline-block元素之间的间隙.这些间隙会导致一些布局上的问题,需要把间隙去掉.对于inlin ...
- 完美解决浮动IE6 7中的兼容性BUG问题
想要创建出漂亮的网页设计,除了要认真学习每一个html和CSS代码之外,不可能不去了解一下臭名昭著的IE6和更早的那些IE浏览器的坏脾气,因为你本来写出的规规矩矩的代码,漂亮的设计就此就要完成了,却发 ...
- 中文代码示例之Angular入门教程尝试
原址: https://zhuanlan.zhihu.com/p/30853705 原文: 中文代码示例教程之Angular尝试 为了检验中文命名在Angular中的支持程度, 把Angular官方入 ...
- 朴素的treap
所谓Treap,就是一种二叉查找树,而我们知道二叉查找树,相对来说比较容易形成最坏的链表情况,所以我们有一种数据结构来防止二叉查找树出现最坏情况,那就是Treap. Treap=tree+heap,T ...
- C#窗口传值(CSDN实例)
//非模式窗体 相较独立From qform=new Form(); qform.Show(); //模式窗体 子依赖父Form qform=new Form();qform.Show ...
- SQLServer 查看SQL语句的执行时间
在MSSQL Server中通过查看SQL语句执行所用的时间,来衡量SQL语句的性能. 通过设置STATISTICS我们可以查看执行SQL时的系统情况.选项有PROFILE,IO ,TIME.介绍如下 ...