BestCoder Round #86
来源:互联网 发布:磁力链接软件 编辑:程序博客网 时间:2024/06/06 12:44
题目链接:hdoj 5804 hdoj 5805 hdoj 5806
A:
水题---然而我开始以为是一天买一个----wrong了几次--
#include<cstdio>#include<cstring>#include<algorithm>using namespace std;#define LL __int64LL shu[100100];int n,m;bool cmp(LL x,LL y){ return x>y;}int main(){ int t;scanf("%d",&t); while(t--) { scanf("%d%d",&n,&m); LL s=0,q; for (int i=0;i<n;i++) { scanf("%I64d",&shu[i]); s+=shu[i]; } char ch[100100]; for (int i=0;i<m;i++) { scanf("%I64d",&q); if (q>s) ch[i]='1'; else ch[i]='0'; } ch[m]=0; printf("%s\n",ch); } return 0;}
B:
删除一个数会减少两个原来的差值--然后增加一个差值---
我们就讨论这个变化对最大值带来的影响就行了
#include<cstdio>#include<cstring>#include<algorithm>using namespace std;#define LL __int64LL shu[100100],cha[100100],pp[100100];int n,m;bool cmp(LL x,LL y){ return x>y;}int main(){ int t;scanf("%d",&t); while(t--) { scanf("%d",&n); for (int i=1;i<=n;i++) scanf("%I64d",&shu[i]); for (int i=1;i<n;i++) { cha[i]=abs(shu[i]-shu[i+1]); pp[i]=cha[i]; } LL ji,zui; ji=cha[1];zui=cha[n-1]; sort(cha+1,cha+n); LL s=0; if (cha[n-1]==ji) s+=cha[n-2]; else s+=cha[n-1]; if (cha[n-1]==zui) s+=cha[n-2]; else s+=cha[n-1]; if (n==3) s+=abs(shu[1]-shu[3]); else { for (int i=1;i<n-1;i++) { ji=abs(shu[i]-shu[i+2]); if (ji>=cha[n-1]) s+=ji; else { LL a,b; a=max(pp[i],pp[i+1]); b=min(pp[i],pp[i+1]); if (a==cha[n-1]) { if (ji>=cha[n-2]) s+=ji; else { if (b==cha[n-2]) s+=max(ji,cha[n-3]); else s+=cha[n-2]; } } else s+=cha[n-1]; } } } printf("%I64d\n",s); } return 0;}
一个for循环滚过去了---
令区间的开头先为1--
再找到第k个大于等于m的数的位置P---
即从1到p,到p+1,,,,到N,以1开始的这N-P+1个区间可以---
然后移动开头---并判断是否还有K个----
#include<cstdio>#include<cstring>#include<algorithm>#define LL __int64using namespace std;int shu[202000];int main(){ int t;scanf("%d",&t); while (t--) { int n,m,k; scanf("%d%d%d",&n,&m,&k); for (int i=1;i<=n;i++) scanf("%d",&shu[i]); int ans=0,kai=1; LL s=0; for (int i=1;i<=n;i++) { if (shu[i]>=m) ans++; // printf("%d %d\n",k,ans); if (ans==k) { // printf("%d 6666",i); while (shu[kai]<m) { s+=(n-i+1); kai++; } s+=(n-i+1); kai++; ans--; } // printf("%d 66\n",ans); } printf("%I64d\n",s); } return 0;}
0 0
- BestCoder Round #86
- BestCoder Round #86
- BestCoder Round #86
- BestCoder Round #86 1002
- BestCoder Round #86
- BestCoder Round #86
- BestCoder Round #86题解报告
- BestCoder Round #86题解报告
- hdu5804(BestCoder Round #86 A)
- bestcoder round#86解题报告
- BestCoder Round #86 1003(尺取法)
- HDU5804&BestCoder Round #86 1001 Price List
- hdoj5850 NanoApe Loves Sequence BestCoder Round #86
- HDU5804 BestCoder Round 86A 【Price List】
- 【计数】HDU5804Price List【BestCoder Round #86】
- BestCoder Round #3 BestCoder Sequence
- bestcoder round #1
- BestCoder round #1
- 每日一练——大数加减乘除运算实现(网易笔试题)
- 多线程编程入门(17):线程同步工具之CountDownLatch
- hdu 5806 NanoApe Loves Sequence Ⅱ
- 数学在机器学习中的重要性
- 占位
- BestCoder Round #86
- Unity学习笔记 4th —— 现在让我们来学一学材质制作
- HTML5的新增标签
- 带你从头到尾梳理大图片加载OOM处理问题
- 网站SEO从入门到精通
- 网络营销赚钱必胜心法
- Html、htm与shtml的区别与联系
- 中小企业网络营销暴赚法
- 赚钱网站心理学设计