酷代码 AI
菜单
全部AI  /  热门  /  AI写代码神器
服务商

题目描述 若干个顾客同时等待一项服务。顾客i需要的服务时间为ti。你的任务是安排n个顾客的服务次序使总的等待时间最小。总的等待时间是指每个顾客等待服务的时间的总和(自己不必计算服务时间)。 输入 有若干组测试数据,每组测试数据有两行,其第一行是一个整数n(0<=n<=4000),表示本次测试中顾客的个数,第二行是这n个顾客需要的服务时间为ti,前后两个顾客的t之间有一个空格。各行的行首、行末无多余空格,输入中给出的顾客是按从小到大的顺序排列的。 输出 对每组输入,输出该次测试中这些顾客最小的总等待时间。 样例输入 copy 3 4 6 2 5 5 4 3 2 1 样例输出 copy 8 20 用c完成

```c #include <stdio.h> // 计算最小总等待时间 int calculateMinimumWaitingTime(int n, int t[]) { int totalWaitingTime = 0; int currentWaitingTime = 0; for (int i = 0; i < n; i++) { currentWaitingTime += t[i]; totalWaitingTime += currentWaitingTime; } return totalWaitingTime; } int main() { int n; while (scanf("%d", &n)!= EOF) { int t[4000]; for (int i = 0; i < n; i++) { scanf("%d", &t[i]); } int minWaitingTime = calculateMinimumWaitingTime(n, t); printf("%d\n", minWaitingTime); } return 0; } ``` [2024-10-28 17:18:56 | AI写代码神器 | 202点数解答]

相关提问