社区讨论
蒟蒻8,10点RE,求助大佬
P1897电梯里的尴尬参与者 2已保存回复 2
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 2 条
- 当前快照
- 1 份
- 快照标识符
- @locnazk0
- 此快照首次捕获于
- 2023/10/30 16:36 2 年前
- 此快照最后确认于
- 2023/11/05 03:39 2 年前
CPP
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
long long n, a[1000010], t = 0, b[1000010];
inline long long read()//快读
{
long long x = 0, f = 1;
char ch = getchar();
while (ch < '0' || ch >'9')
{
if (ch == '-')
f = -1;
ch = getchar();
}
while (ch >= '0' && ch <= '9')
{
x = (x << 1) + (x << 3) + ch - '0';
ch = getchar();
}
return x * f;
}
int main()
{
n = read();
for (int i = 1; i <= n; i++)
{
a[i] = read();
++b[a[i]];//对应楼层人数+1
}
sort(a + 1, a + n + 1);//快排逆序
t = a[n] * 10;//上下楼层花费的时间
for (int i = 1; i <= a[n]; i++)
{
if (b[i] == 1)//如果这个楼层只有1人,则只需开门+下电梯的时间=5+1=6
t += 6;
else if (b[i] >= 2)//如果该楼层大于等于2人下,则需开门+下楼梯的人数的时间=5+b[i],b[i]是对应人数
t = t + 5 + b[i];
}
printf("%lld", t);
return 0;
}
回复
共 2 条回复,欢迎继续交流。
正在加载回复...