解题思路:
标记增加和减少的位置,操作一波
注意事项:
如果只是输出单独一个,或者求其中的几个值,,,
emmmmmmmm
好像也可以这么算,,复杂度O(n*3)
只有发完一次求几个值,然后再发,再求,循环往复,,这种操作才不适用。。。
参考代码:
#include <iostream> using namespace std; int main() { int N, M, Li, Ri, Ci; int map[100001] = {0}; int ans = 0; cin >> N >> M; while (M--) { cin >> Li >> Ri >> Ci; map[Li] += Ci; map[Ri + 1] -= Ci; } for (int i = 1; i <= N; i++) { ans += map[i]; cout << ans << ' '; } return 0; }
0.0分
0 人评分
字符串问题 (C语言代码)浏览:1563 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:397 |
C语言程序设计教程(第三版)课后习题4.9 (C语言代码)浏览:615 |
C语言训练-求1+2!+3!+...+N!的和 (C语言代码)浏览:804 |
1113题解浏览:806 |
C语言程序设计教程(第三版)课后习题10.1 (C语言代码)浏览:573 |
钟神赛车 (C语言代码)浏览:633 |
理财计划 (C语言代码)浏览:477 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:801 |
A+B for Input-Output Practice (III) (C语言代码)浏览:443 |
ET 2019-10-06 21:22:33 |
测试样例改了。。。之前还是对的。。。
18信二孙笑柯 2019-10-08 10:17:14 |
我不知道,抱歉 抱歉 哈哈