1001

【题意】

给定一个长度为n(n<=100000)的正整数序列,给出m(m<=100000)个子集合和的记录,问哪些一定比正确的记录多了

【题解】

对正整数序列求和,记录比和大的一定记录多了

HackPoint:sum要开long long

int v[];
int main(){
int T=gi;
while(T--){
int n,m;n=gi,m=gi;ll sum=;
FOR1(i,n)v[i]=gi,sum+=v[i];
FOR1(i,m){
ll p;scanf("%I64d",&p);
if(p>sum)printf("");
else printf("");
}puts("");
}
}

1002

【题意】

给定一个长度为n(n<=100000)的序列,选择一个数并删除它。每个数被选中的概率相等,求删数后相邻两数差值绝对值最大值的期望*n的值

【题解】

一眼看上去个multiset????

然后在开黑组里问了下10*100000*6*multiset能不能过

然后zzq:

然后写了个multiset过来pretest

int a[];
int b[];
#define era(x) s.erase(s.lower_bound(x))
int main(){
int T=gi;
while(T--){
int n=gi;
FOR1(i,n)a[i]=gi;
ll ans=;
multiset<int,greater<int> >s;
FOR1(i,n-)s.insert(abs(a[i+]-a[i]));
for(int i=;i<n;i++){
era(abs(a[i]-a[i-]));
era(abs(a[i+]-a[i]));
s.insert(abs(a[i+]-a[i-]));
ans+=*s.begin();
s.insert(abs(a[i]-a[i-]));
s.insert(abs(a[i+]-a[i]));
era(abs(a[i+]-a[i-]));
}
era(abs(a[]-a[]));
ans+=*s.begin();
s.insert(abs(a[]-a[]));
era(abs(a[n]-a[n-]));
ans+=*s.begin();
printf("%I64d",ans);
}
}

最后

f**k y*u

后来冷静想了下,好像是个傻逼题

求出前ii个数里相邻差值的最大值,ii到nn里相邻差值的最大值,那么

int f[],g[],a[];
int main(){
int T=gi;
while(T--){
int n=gi;
FOR1(i,n)a[i]=gi;
for(int i=;i<=n;i++)f[i]=max(f[i-],abs(a[i]-a[i-]));
for(int i=n-;i>=;i--)g[i]=max(g[i+],abs(a[i+]-a[i]));
//FOR1(i,n-1)printf("%d ",f[i]);puts("");
ll ans=;
FOR1(i,n){
if(i==)ans+=g[];//printf("%I64d\n",ans);
else if(i==n)ans+=f[n-];//printf("%I64d\n",ans);
else{
//printf("%d %d\n",f[i-1],g[i+1]);
ans+=max(f[i-],max(g[i+],abs(a[i+]-a[i-])));
//printf("%I64d\n",ans);
}
}
printf("%I64d\n",ans);
}
}

1003

【题意】

给定一个和前两题差不多长的序列,给定一组m,k的值,求多少个区间里的第 k 大的数不小于 m

【题解】

xjb尺取一下就行了

int a[];
int main(){
int T=gi;
while(T--){
int n,m,k;
n=gi;m=gi;k=gi;
FOR1(i,n)a[i]=gi;
int st=,ed=,cnt=;ll ans=;
while(st<=n){
while(cnt<k&&ed+<=n)cnt+=(a[++ed]>=m);
if(cnt==k)ans=ans+n-ed+;
cnt-=(a[st++]>=m);
}
printf("%I64d\n",ans);
}
}

【SystemTest】

1002果然T辣qwq

由于手速慢一个人都没hack到

单调递减的排名=。=大沙茶的第一次BC到此结束。

[BC]BestCoder Round#86小结的更多相关文章

  1. [HDU5807] [BestCoder Round #86 1004] Keep In Touch (DP)

    [HDU5807] [BestCoder Round #86 1004] Keep In Touch (DP) 题面 有三个人从一张N个点无重边的有向无环图上的三个点出发,每单位时间,他们分别选择当前 ...

  2. BestCoder Round #86 A B C

    这次BC终于不像上次一样惨烈 终于A了三题…… 终测ing…… 发一波题解…… A.Price List A题十分无脑 只要把所有数加起来存到sum里 询问的时候大于sum输出1 否则输出0就行了…… ...

  3. BestCoder Round #86

    A题 Price List 巨水..........水的不敢相信. #include <cstdio> typedef long long LL; int main() { int T; ...

  4. BestCoder Round #86 解题报告

    A.Price List Sol 求和查询 Code #include<cstdio> #include<algorithm> #include<iostream> ...

  5. HDU 5805 NanoApe Loves Sequence (思维题) BestCoder Round #86 1002

    题目:传送门. 题意:题目说的是求期望,其实翻译过来意思就是:一个长度为 n 的数列(n>=3),按顺序删除其中每一个数,每次删除都是建立在最原始数列的基础上进行的,算出每次操作后得到的新数列的 ...

  6. BestCoder Round #86 部分题解

    Price List 题意: 有n件商品,每天只能买一件,并且会记录账本,问有多少次一定记多了? 题解: 就是求和,最后如果大于和就输出1,否则0. 代码: #include <bits/std ...

  7. HDU5808Price List Strike Back (BestCoder Round #86 E) cdq分治+背包

    严格按题解写,看能不能形成sum,只需要分割当前sum怎么由两边组成就好 #include <cstdio> #include <cstring> #include <c ...

  8. HDU5807 Keep In Touch (BestCoder Round #86 D ) 分布式dp

    #include <cstdio> #include <cstring> #include <cmath> #include <vector> #inc ...

  9. HDU5806 NanoApe Loves Sequence Ⅱ (BestCoder Round #86 C)二分

    分析:大于等于m的变成1,否则变成0,预处理前缀和,枚举起点,找到第一个点前缀和大于m即可 找第一个点可以二分可以尺取 #include <cstdio> #include <cst ...

随机推荐

  1. php中sprintf与printf函数用法区别

    下面是一个示例:四舍五入保留小数点后两位  代码如下 复制代码 <?php$num1 = 21;echo sprintf("%0.2f",$num1)."<b ...

  2. IOS开发: 为UIImageView添加点击事件

    转载于:http://www.pocketdigi.com/20140218/1276.html UIImageView并不像UIButton一样,点点鼠标就可以关联点击事件,也不像Android里有 ...

  3. c++11之右值引用

    本文大部分来自这里,并不是完全着行翻译,如有不明白的地方请参考原文. 在c++中,创建临时对象的开销对程序的影响一直很大,比如以下这个例子: String getName(){ return “Kia ...

  4. iOS屏幕尺寸和分辨率

    iOS平台家族成员主要包括iPhone.iPod Touch和iPad,但是各类设备的分辨率各不相同,目前存在的尺寸主要有: iOS设备的尺寸多种多样,此外,屏幕的分辨率也有多种,总结如下表所示: 其 ...

  5. C# 编写Window服务基础(一)

    一.Windows服务介绍: Windows服务以前被称作NT服务,是一些运行在Windows NT.Windows 2000和Windows XP等操作系统下用户环境以外的程序.在以前,编写Wind ...

  6. java 高精度

    package BigDecimal; import java.math.BigDecimal; import java.lang.Object; public class BigDecimalTes ...

  7. QQ好友列表向左滑动出现置顶、删除--第三方开源--SwipeMenuListView

    SwipeMenuListView是在github上的第三方开源项目,该项目在github上的链接地址是:https://github.com/baoyongzhang/SwipeMenuListVi ...

  8. 1096. Consecutive Factors (20)

    Among all the factors of a positive integer N, there may exist several consecutive numbers. For exam ...

  9. Oracle物理的体系结构

    体系结构图的学习: 老余服装店的故事 结构图: SQL查询语句 SGA 共享池shared pool 数据缓存区Buffer cache PGA 进程 SQL更新语句 SGA: 日志缓存区 日志文件 ...

  10. access_ok()

    access_ok() 函数是用来代替老版本的 verify_area() 函数的.它的作用也是检查用户空间指针是否可用. 函数原型: access_ok (type, addr, size); 变量 ...