首页 > 代码库 > CF816B Karen and Coffee
CF816B Karen and Coffee
思路:
有点类似于区间修改点查询的树状数组。
实现:
1 #include <iostream> 2 #include <cstdio> 3 using namespace std; 4 5 const int MAXN = 200005; 6 int a[MAXN], n, k, q; 7 8 int main() 9 { 10 cin >> n >> k >> q; 11 for (int i = 0; i < n; i++) 12 { 13 int l, r; 14 scanf("%d %d", &l, &r); 15 a[l]++; a[r + 1]--; 16 } 17 for (int i = 1; i < MAXN; i++) a[i] += a[i - 1]; 18 for (int i = 1; i < MAXN; i++) 19 if (a[i] >= k) a[i] = 1; 20 else a[i] = 0; 21 for (int i = 1; i < MAXN; i++) a[i] += a[i - 1]; 22 for (int i = 0; i < q; i++) 23 { 24 int l, r; 25 scanf("%d %d", &l, &r); 26 printf("%d\n", a[r] - a[l - 1]); 27 } 28 return 0; 29 }
CF816B Karen and Coffee
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。