专栏文章
题解:CF939C Convenient For Everybody
CF939C题解参与者 1已保存评论 0
文章操作
快速查看文章及其快照的属性,并进行相关操作。
- 当前评论
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @miqq9lq1
- 此快照首次捕获于
- 2025/12/04 08:58 3 个月前
- 此快照最后确认于
- 2025/12/04 08:58 3 个月前
题目传送门
经过推理可以知道此时能够参加比赛的时区有如下三种情况:
-
从 时区到 时区可以参加
-
从1到 时区和 到 时区可以参加
-
从 时区到 时区可以参加
由于每个时区的人数是固定的,所以使用前缀和来维护人数的和。
AC Code
CPP#include <bits/stdc++.h>
using namespace std;
int a[100005], sum[100005];
int main() {
int n, num1, num2;
cin >> n;
for (int i = 1; i <= n; i++) {
cin >> a[i];
sum[i] = sum[i - 1] + a[i];
}
cin >> num1 >> num2;
int ans = 0, maxn = -0x3f3f3f3f;
for (int i = 1; i <= n; i++) {
int cnt;
if (i <= num1) cnt = sum[num2 - i] - sum[num1 - i];
else if (i <= num2) cnt = sum[num2 - i] + sum[n] - sum[num1 - i + n];
else cnt = sum[num2 - i + n] - sum[num1 - i + n];
if (cnt > maxn) {
ans = i;
maxn = cnt;
}
}
cout << ans << endl;
return 0;
}
相关推荐
评论
共 0 条评论,欢迎与作者交流。
正在加载评论...