专栏文章

题解:P13821 「Diligent-OI R2 A」蒹葭苍苍

P13821题解参与者 1已保存评论 0

文章操作

快速查看文章及其快照的属性,并进行相关操作。

当前评论
0 条
当前快照
1 份
快照标识符
@mio69kpx
此快照首次捕获于
2025/12/02 14:03
3 个月前
此快照最后确认于
2025/12/02 14:03
3 个月前
查看原文

题目描述

nn 行空地,其中第 ii 行的第 11 列到第 aia_i 列都是空地。除了给定的空地以外,其他位置都是障碍物。
你需要从第 11 行最左边的格子走到第 nn 行最右边的格子。但你走的过程中只能向上、下或右方向,也不能走出网格。但是可以重复走某个格子,重复走的只算一次, 求最多走几个格子。

思路

minximinx_iaia_iana_n 的最小值,即 minxi=minijn{ai}minx_i=\min_{i\le j \le n}\{a_i\},在第 ii 行最多经过 minximinx_i 个格子,因为无法往左走,所以第 ii 行走的列数不能大于 minximinx_i

代码

CPP
#include <iostream>
using namespace std;

int n;
int a[110];

int main() {
	cin >> n;
	for (int i = 1; i <= n; i++) cin >> a[i];
	int minx = 100;
	int ans = 0;
	for (int i = n; i; i--) {
		minx = min(minx, a[i]);
		ans += minx;
	}
	cout << ans;
	return 0;
}

评论

0 条评论,欢迎与作者交流。

正在加载评论...