cf1809e(edu145e)
1 /*
2 _ooOoo_
3 o8888888o
4 88" . "88
5 (| -_- |)
6 O\ = /O
7 ____/`---'\____
8 .' \\| |// `.
9 / \\||| : |||// \
10 / _||||| -:- |||||- \
11 | | \\\ - /// | |
12 | \_| ''\---/'' | |
13 \ .-\__ `-` ___/-. /
14 ___`. .' /--.--\ `. . __
15 ."" '< `.___\_<|>_/___.' >'"".
16 | | : `- \`.;`\ _ /`;.`/ - ` : | |
17 \ \ `-. \_ __\ /__ _/ .-` / /
18 ======`-.____`-.___\_____/___.-`____.-'======
19 `=---='
20 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
21 AC 护体
22 */
23
24 #include <bits/stdc++.h>
25 #define for_(i,a,b) for (int i = (a); i < (b); i++)
26 #define rep_(i,a,b) for (int i = (a); i <= (b); i++)
27 #define per_(i,a,b) for (int i = (a); i >= (b); i--)
28 #define ll long long
29 #define pii pair<int, int>
30 #define fi first
31 #define se second
32 #define sz(a) (int)a.size()
33 #define all(v) v.begin(), v.end()
34 #define ull unsigned long long
35 #define pb push_back
36 #define CE cout << endl;
37 #define CO cout << "OK" << endl;
38 #define D DEBUG
39 #define DEBUG(x) cerr << #x << '=' << x << endl
40 #define endl '\n'
41 using namespace std;
42 const int maxn = 5e5 + 10, mod = 998244353;// mod = 1949777;
43 const double EPS = 1e-3;
44 int n, m, a, b;
45 int ans[1005][1005];
46 signed main() {
47 #ifdef LOCAL
48 freopen("w.in", "r", stdin);
49 //freopen("w.ans", "w", stdout);
50 #endif
51 ios::sync_with_stdio(false);
52 cin.tie(nullptr);
53 //int tt; cin >> tt; while(tt--) solve();
54 cin >> n >> a >> b;
55 vector<int> v(n);
56 rep_(i, 0, n - 1) cin >> v[i];
57 rep_(i, 0, a + b) {
58 int x = max(0, i - b), y = min(i, a); // 水量总和为i时水箱1的上下界
59 int lo = x, hi = y;
60 per_(j, n - 1, 0) {
61 lo = max(lo + v[j], x);
62 hi = min(hi + v[j], y);
63 }//从水箱1的上下界从后往前,把倒水的过程逆过去,得出有影响的水的上下界
64 int flo = lo, fhi = hi;
65 rep_(j, 0, n - 1) {
66 flo = max(min(flo - v[j], y), x);
67 fhi = min(max(fhi - v[j], x), y);
68 } // 从有影响的水的上下界从前往后模拟倒水,得出答案的水的上下界
69 rep_(j, x, y) {
70 int d = i - j;
71 if (j <= lo) {
72 ans[j][d] = flo; //水箱1水太少,对答案贡献是下界flo
73 } else if (j >= hi) {
74 ans[j][d] = fhi;//太多
75 } else {
76 ans[j][d] = flo + j - lo;
77 //处于有影响范围
78 }
79 }
80 }
81 rep_(i, 0, a) {
82 rep_(j, 0, b) {
83 cout << ans[i][j] << ' ';
84 }
85 cout << endl;
86 }
87 return 0;
88 }
cf1809e(edu145e)的更多相关文章
随机推荐
- jetson nano 2gb相关问题
1.create_ap不能根据address设置带设备号的wifi热点 sudo nohup create_ap wlan0 eth0 ZL_Jetson_WIFI-$(sudo cat /sys/c ...
- JRebel4.2 使用之前的激活地址失效,需更改新的激活地址
使用 https://jrebel.qekang.com 会报错 把 https://jrebel.qekang.com 换成 http://idea.javatiku.cn/ ,再进行激活,就ok了
- centos7 为文件夹添加写入权限
[root@VM-16-15-centos ~]# sudo su[root@VM-16-15-centos ~]# cd /www/wwwroot/www.htqq.sale/php/images[ ...
- conda相关的设置备忘
因为默认channel已经没有3.4.4(最后一个支持xp的python3)了,为了添加这个的版本,尝试先用conda-forge channel: conda create -n myenv pyt ...
- Eclipse导入第四版《算法》algs4库
最近在研究<算法>,遇到algs4库导入eclipse问题,查了很多网站,都不适用,最终解决,特此记录一下.第一次写博客,有什么不足之处望各位大神纠正. 1. 首先打开eclipse软件, ...
- 将spring boot项目打包成jar包
在spring boot项目的pom文件中加入 <packaging>jar</packaging> 生成jar包 文件右键Open In Explorer找到文件所在位置 可 ...
- USB 驱动框架分析
这里先说一些概念性的东西,了解一下USB 一.关于usb设备 都见过很多,用过很多了,每当我们插上一个usb设备到pc的时 右下角就会弹出一个提示信息,提示"发现xxx"设备,再接 ...
- 2.面向对象基础-01Java类和对象
写在前面: (1)编程语言的发展(人越来越容易理解): 机器语言 汇编语言 高级语言-面向过程 高级语言-面向对象 (2)面向对象的特点: 封装性 继承性 多态性 01Java类和对象 对象:属性(静 ...
- 记一下Linux环境SpringBoot 用OpenOffice Word转PDF
环境 Windows或者Linux 首先安装 deb方式 tar -xvzf Apache_OpenOffice_XXXX_Linux_x86-64_install-deb_zh-CN.tar.gz ...
- 【问题解决】Nacos服务端NVDB-CNVDB-2023674205漏洞
缘起 最近(2023.03.13)客户现场要求自检有无使用Nacos,原因是Nacos存在认证绕过高危漏洞,其漏洞代码NVDB-CNVDB-2023674205,本文就简单说一下这个事儿,以及如何解决 ...