我都出了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的更多相关文章

  1. AtCoder Regular Contest 082 D Derangement

    AtCoder Regular Contest 082 D Derangement 与下标相同与下个交换就好了.... Define a sequence of ’o’ and ’x’ of lengt ...

  2. AtCoder Regular Contest 082 (ARC082) E - ConvexScore 计算几何 计数

    原文链接http://www.cnblogs.com/zhouzhendong/p/8934254.html 题目传送门 - ARC082 E 题意 给定二维平面上的$n$个点,定义全集为那$n$个点 ...

  3. 【推导】【模拟】AtCoder Regular Contest 082 F - Sandglass

    题意:有个沙漏,一开始bulb A在上,bulb B在下,A内有a数量的沙子,每一秒会向下掉落1.然后在K个时间点ri,会将沙漏倒置.然后又有m个询问,每次给a一个赋值ai,然后询问你在ti时刻,bu ...

  4. 【计算几何】【推导】【补集转化】AtCoder Regular Contest 082 E - ConvexScore

    题意:平面上给你N个点.对于一个“凸多边形点集”(凸多边形点集被定义为一个其所有点恰好能形成凸多边形的点集)而言,其对答案的贡献是2^(N个点内在该凸多边形点集形成的凸包内的点数 - 该凸多边形点集的 ...

  5. 【推导】AtCoder Regular Contest 082 D - Derangement

    题意:给你一个排列a,每次可以交换相邻的两个数.让你用最少的交换次数使得a[i] != i. 对于两个相邻的a[i]==i的数,那么一次交换必然可以使得它们的a[i]都不等于i. 对于两个相邻的,其中 ...

  6. AtCoder Regular Contest 082 E

    Problem Statement You are given N points (xi,yi) located on a two-dimensional plane. Consider a subs ...

  7. AtCoder Regular Contest 082 F

    Problem Statement We have a sandglass consisting of two bulbs, bulb A and bulb B. These bulbs contai ...

  8. AtCoder Regular Contest 082 ABCD

    A #include<bits/stdc++.h> using namespace std; ]; int n,m; int main(){ cin>>n>>m; ...

  9. 【AtCoder Regular Contest 082 F】Sandglass

    [链接]点击打开链接 [题意] 你有一个沙漏. 沙漏里面总共有X单位的沙子. 沙漏分A,B上下两个部分. 沙漏从上半部分漏沙子到下半部分. 每个时间单位漏1单位的沙子. 一开始A部分在上面.然后在r1 ...

随机推荐

  1. 将Maven的Web项目部署到windows的Tomcat里

    这里我用的是win7和tomcat8,且tomcat8下载的是压缩包而非安装文件. 第一步:先将tomcat8安装服务,cmd里更改目录为tomcat8(即压缩包解压后的那个文件夹)的bin文件夹, ...

  2. Say Hello to ConstraintLayout

    ConstraintLayout介绍 ConstraintLayout让你可以在很平的view结构(没有多层布局嵌套)中构建一个复杂的布局结构. 有点像RelativeLayout, 所有的view都 ...

  3. arcgis api for js实现克里金插值渲染图--不依赖GP服务

    本篇的亮点是利用kriging.js结合arcgis api for js,实现克里金插值渲染图,截图如下: 具体实现的思路如下: 1.kriging.js开源js,可以实现针对容器canvas克里金 ...

  4. vs2015企业版密钥

    专业版:HMGNV-WCYXV-X7G9W-YCX63-B98R2 企业版:HM6NR-QXX7C-DFW2Y-8B82K-WTYJV

  5. spring_boot_pay支付宝,微信,银联支付详细代码案例

    spring-boot-pay 支付服务:支付宝,微信,银联详细代码案例(除银联支付可以测试以外,支付宝和微信支付测试均需要企业认证,个人无法完成测试),项目启动前请仔细阅读 注意事项  . 友情提示 ...

  6. springBoot系列教程08:拦截器(Interceptor)的使用

    拦截器intercprot  和 过滤器 Filter 其实作用类似 在最开始接触java 使用struts2的时候,里面都是filter 后来springmvc时就用interceptor 没太在意 ...

  7. php gif处理

    http://www.jb51.net/article/51702.htm https://github.com/Sybio/GifCreator https://github.com/Sybio/G ...

  8. 例子:web版坦克大战1.0

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. Spring之DAO二

    上一篇算是把JdbcDaoSupport的使用演示了一下,这篇主要是演示MappingSqlQuery.SqlUpdate.SqlFunction的使用以及Spring的事务管理. 一.Mapping ...

  10. 转:java 可设置最大内存

    测试方法:在命令行下用 java -XmxXXXXM -version ,比如:java -Xmx1024M -version命令来进行测试,然后逐渐的增大XXXX的值,如果执行正常就表示指定的内存大 ...