社区讨论
,。
P5017[NOIP 2018 普及组] 摆渡车参与者 2已保存回复 1
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 1 条
- 当前快照
- 1 份
- 快照标识符
- @mi7d4gst
- 此快照首次捕获于
- 2025/11/20 19:43 4 个月前
- 此快照最后确认于
- 2025/11/20 19:43 4 个月前
#include
int c[100005], n, m, p1, p2, s1, s2;
void Work() {
CPPlong long dragon = 0, tiger = 0, newdragon, newtiger, diff, mindiff = 0x7FFFFFFFFFFFFFFF;
for (int i = 1; i <= n; i++) {
if (i < m) dragon += 1LL * (m - i) * c[i];
if (i > m) tiger += 1LL * (i - m) * c[i];
}
if (p1 < m) dragon += 1LL * (m - p1) * s1;
CPPif (p1 > m) tiger += 1LL * (p1 - m) * s1;
for (int i = 1; i <= n; i++) {
newdragon = dragon; newtiger = tiger;
if (i < m) newdragon = dragon + 1LL * (m - i) * s2;
if (i > m) newtiger = tiger + 1LL * (i - m) * s2;
diff = newdragon > newtiger ? newdragon - newtiger : newtiger - newdragon;
if (mindiff > diff) { mindiff = diff; p1 = i; }
}
}
int main() {
CPP//freopen("tiger.in", "r", stdin);
//freopen("tiger.out", "w", stdout);
scanf("%d", &n);
for (int i = 1; i <= n; i++) scanf("%d", c + i);
scanf("%d%d%d%d", &m, &p1, &s1, &s2);
Work();
printf("%d", p1);
return 0;
}
回复
共 1 条回复,欢迎继续交流。
正在加载回复...