今天是PTA题库解法讲解的第八天,今天我们要讲解天梯赛的赛场安排,题目如下:
解题思路:
这个问题的关键在于高效地为参赛学校的队员分配赛场,同时满足给定的条件。我们可以通过以下步骤解决这个问题:
-
存储每所学校的信息:我们可以使用一个数组来存储每所学校的参赛人数。
-
赛场分配:根据学校的参赛人数和每个赛场的规定容量,通过循环分配学校的队员到不同的赛场中。
-
输出结果:按照题目要求输出每所学校需要联系的监考人数,以及总共需要开设的赛场数量。
下面是相应的C语言实现:
#include <stdio.h>
#define MAX_SCHOOL 5000
typedef struct {
char name[7]; // 学校缩写,最多6个字符
int num; // 学校参赛人数
int supervisor; // 需要联系的监考人数
} School;
int main() {
int N, C;
scanf("%d %d", &N, &C);
School schools[MAX_SCHOOL];
int totalRooms = 0;
for (int i &