您的位置:首页 > 其它

HDU 5037 Frog——贪心

2017-11-30 13:32 344 查看
#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
using namespace std;
const int maxn = 2e5+5;
int a[maxn];
int main() {
int T; scanf("%d", &T);
for (int kase = 1; kase <= T; kase++) {
int n, m, l; scanf("%d %d %d", &n, &m, &l);
for (int i = 1; i <= n; i++) scanf("%d", &a[i]);
sort(a+1, a+1+n);
a[n+1] = m;
int ans = 0, cur = 0, pre = -l;
for (int i = 1; i <= n+1; i++) {
ans += (a[i]-cur) / (l+1) * 2;
pre += (a[i]-cur) / (l+1) * (l+1);
if (a[i]-pre > l) { pre = cur+(a[i]-cur)/(l+1)*(l+1); ans++; }
cur = a[i];
}
printf("Case #%d: %d\n", kase, ans);
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: