比赛 |
SBOI2022暑假快乐赛① |
评测结果 |
AWWWWWWWWW |
题目名称 |
Snow Boots |
最终得分 |
10 |
用户昵称 |
lihaoze |
运行时间 |
0.000 s |
代码语言 |
C++ |
内存使用 |
0.00 MiB |
提交时间 |
2022-06-25 11:16:36 |
显示代码纯文本
#include <bits/stdc++.h>
using i64 = long long;
using PII = std::pair<i64, i64>;
const i64 N = 260;
i64 n, b;
i64 a[N], f[N];
PII s[N];
int main() {
freopen("snowboots_silver_18feb.in", "r", stdin);
freopen("snowboots_silver_18feb.out", "w", stdout);
std::ios::sync_with_stdio(false);
std::cin.tie(nullptr);
std::cin >> n >> b;
for (i64 i = 1; i <= n; ++ i) std::cin >> a[i];
for (i64 i = 1; i <= b; ++ i) {
std::cin >> s[i].first
>> s[i].second;
}
for (i64 i = 1; i <= b; ++ i) {
for (i64 j = n; j >= 2; -- j) {
for (i64 k = 1; k < s[j].second; ++ k)
if (a[i - k] <= s[j].first)
f[j] = std::max(f[j], f[j - k] + 1);
}
}
i64 res = 0;
for (i64 i = 1; i <= b; ++ i) res = std::max(res, f[i]);
std::cout << b - res << '\n';
return 0;
}