社区讨论

蒟蒻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 条回复,欢迎继续交流。

正在加载回复...