1217 借教室 2012年NOIP全国联赛提高组[迷之不能自拔]
来源:互联网 发布:怎么联系网络推手 编辑:程序博客网 时间:2024/04/30 00:05
#include<iostream>#include<algorithm>#include<cstring>#include<string>#include<cstdio> using namespace std;const int MN=1000006; long long a[MN],num[MN],x[MN],y[MN],sum,ans,s[MN],n,m;long long gt(){ char c=getchar(); long long x=0,f=1; while(c<'0'||c>'9'){if(c=='-')f=-1; c=getchar();} while(c>='0'&&c<='9'){x=x*10+c-'0'; c=getchar();} return x*f;}bool ck(int k){ memset(num,0,sizeof(num)); for(int i=1;i<=k;i++){ num[x[i]]+=s[i]; num[y[i]+1]-=s[i];//+1 } sum=0; for(int i=1;i<=n;i++){ sum+=num[i];//cout<<233<<endl; if(sum>a[i])return 0; } return 1;} int main(){ cin>>n>>m; for(int i=1;i<=n;i++) { a[i]=gt(); } for(int i=1;i<=m;i++){ s[i]=gt();x[i]=gt();y[i]=gt(); } int l=1,r=m,mid; //for(int i=1;i<=m;i++){ // cout<<i<<' '<<ck(i)<<endl; //} while(l<=r){ mid=(l+r)>>1; //cout<<l<<' '<<r<<' '<<mid<<' '<<ans<<endl; //cout<<"ck mid"<<' '<<mid<<' '<<ck(mid)<<endl; if(ck(mid)){ l=mid+1; //cout<<233<<ans<<endl; } else{ ans=mid; r=mid-1; //cout<<2333<<' '<<ans<<endl; } //cout<<l<<' '<<r<<' '<<mid<<' '<<ans<<endl; } if(!ans)cout<<0; else cout<<-1<<endl<<ans; return 0;}
0 0
- 1217 借教室 2012年NOIP全国联赛提高组[迷之不能自拔]
- 借教室 2012年NOIP全国联赛提高组
- Codevs 1217 借教室 2012年NOIP全国联赛提高组
- 借教室 ——2012年NOIP全国联赛提高组
- Codevs 1017 乘积最大 2000年NOIP全国联赛普及组NOIP全国联赛提高组
- 2012年NOIP提高组 借教室
- 国王游戏 2012NOIP全国联赛提高组
- 火柴排队 2013年NOIP全国联赛提高组
- 进制转换 2000年NOIP全国联赛提高组
- 聪明的质监员 2011年NOIP全国联赛提高组
- 加分二叉树 2003年NOIP全国联赛提高组
- 1088 神经网络 2003年NOIP全国联赛提高组
- 1068 乌龟棋 2010年NOIP全国联赛提高组
- 加分二叉树 2003年NOIP全国联赛提高组
- 过河 2005年NOIP全国联赛提高组
- 花匠 2013年NOIP全国联赛提高组
- 能量项链 2006年NOIP全国联赛提高组
- 3286 火柴排队 2013年NOIP全国联赛提高组
- Android Service完全解析,关于服务你所需知道的一切(上)
- 永恒的契约
- hdu3062Party
- (二十)java多线程之ScheduledThreadPoolExecutor
- 排序算法比较
- 1217 借教室 2012年NOIP全国联赛提高组[迷之不能自拔]
- 归并排序 迭代版
- Android 自定义View(二)
- 图片的像素操作、添加文本
- 【面试题】实现单链表的逆序
- (二十一)java多线程之Executors
- spring拦截器&过滤器&springjdbc&mybatis
- 【PAT甲级】1061. Dating (20)
- GDOI2017模拟11.3 总结