HDU 3577 Fast Arrangement
来源:互联网 发布:淘宝家居装修论坛网 编辑:程序博客网 时间:2024/06/12 01:52
这题属于数据结构和模拟题,大家要注意的是如果是1 3,那么1,2加一,3并不加,因为3的时候他已经下火车了。(PS:因为这个纠结了好久)。代码中有两个数组,一个是mxs,代表他的儿子的最大值,num代表他自己的次数。
#include <stdio.h>#include <string.h>#include <iostream>#include <algorithm>#define maxn 1000000#define mem(a) memset(a, 0, sizeof(a))using namespace std;int mxs[maxn * 4 + 5], num[maxn * 4 + 5], k, res[maxn + 5];void add(int ll, int rr, int l, int r, int n){ if(ll <= l&&r <= rr) { num[n]++; mxs[n]++; return ; } int mid = (l + r) / 2; if(ll <= mid) add(ll, rr, l, mid, n * 2); if(rr > mid) add(ll, rr, mid + 1, r, n * 2 + 1); mxs[n] = max(mxs[n * 2], mxs[n * 2 + 1]) + num[n];}int check(int ll,int rr,int l,int r,int n){ if(ll <= l&&r <= rr) { return mxs[n]; } int mid = (l + r) / 2, nn = 0; if(ll <= mid) nn = max(nn, check(ll, rr, l, mid, n * 2)); if(rr > mid) nn = max(nn, check(ll, rr, mid + 1, r, n * 2 + 1)); return nn + num[n];}int main(){ int t, i, j, q, a, b, cas = 1, w; scanf("%d",&t); while(t--) { w = 0; mem(num); mem(mxs); scanf("%d%d",&k, &q); for(i = 1;i <= q;i++) { scanf("%d%d",&a, &b); if(check(a, b - 1, 1, maxn, 1) < k) { res[++w] = i; add(a, b - 1, 1, maxn, 1); } } printf("Case %d:\n", cas++); for(i = 1;i <= w;i++) { printf("%d ",res[i]); } printf("\n\n"); } return 0;}
0 0
- HDU 3577 Fast Arrangement
- HDU 3577 Fast Arrangement
- HDU 3577 Fast Arrangement
- 线段树 HDU 3577 Fast Arrangement
- hdu 3577 Fast Arrangement(线段树)
- HDU 3577 Fast Arrangement(线段树)
- HDU-3577-Fast Arrangement-区间更新
- hdu 3577 Fast Arrangement(区间更新)
- hdu 3577 Fast Arrangement(线段树+lazy)
- HDU 3577 Fast Arrangement 线段树 区间更新
- HDU 3577 Fast Arrangement(区间覆盖+单点查询)
- HDU 3577 Fast Arrangement(线段树功能:区间更新,查询区间的最大覆盖次数)
- Fast Arrangement-3577-线段树成段更新
- hdu3577 Fast Arrangement
- hdu3577 Fast Arrangement
- hdu3577-Fast Arrangement 线段树区间覆盖
- HDU 4109 Instrction Arrangement
- Hdu 4109 Instrction Arrangement
- 关于VS2010编译CERTI3.4.3中的error MSB6006问题的处理
- 【Opencv】大律法求阈值+分割图像计算像素比
- 12款很棒的浏览器兼容性测试工具
- c语言009---作用域,生命周期,内存数据存储
- T001_UT001_0013
- HDU 3577 Fast Arrangement
- 徐汉彬:Web系统大规模并发——电商秒杀与抢购
- T001_UT001_0014
- 黑马学员《java环境配置》
- QTextStream的使用
- 9本Java程序员必读的书
- JSON知识复习
- T001_UT001_0015
- 黑马学员《String》