| #include <stdio.h> |
| #include <stdlib.h> |
| #include <string.h> |
| |
| struct player_data { |
| char id[11]; |
| int problem_time[5]; |
| int pass[5]; |
| int pass_num; |
| int final_time; |
| } players[500]; |
| typedef struct player_data STU; |
| |
| int find_player_number(char player_id[11], int total_players); |
| int cmp(const void* p1, const void* p2) { |
| if (((STU*)p2)->pass_num == ((STU*)p1)->pass_num) { |
| if (((STU*)p1)->final_time == ((STU*)p2)->final_time) |
| return strcmp(((STU*)p1)->id, ((STU*)p2)->id); |
| return ((STU*)p1)->final_time - ((STU*)p2)->final_time; |
| } |
| return ((STU*)p2)->pass_num - ((STU*)p1)->pass_num; |
| } |
| |
| int main() { |
| int total_players = 0; |
| int n; |
| scanf("%d", &n); |
| for (int i = 0; i < n; i++) { |
| int ptr_player; |
| char player_id[11]; |
| char problem; |
| int t; |
| char state[9]; |
| scanf("%s %c %d %s", player_id, &problem, &t, state); |
| problem = problem - 'A'; |
| ptr_player = find_player_number(player_id, total_players); |
| if (players[ptr_player].pass[problem] == 1) |
| continue; |
| if (ptr_player == total_players) |
| { |
| strcpy(players[total_players].id, player_id); |
| total_players++; |
| } |
| if (state[0] == 'R') |
| { |
| players[ptr_player].problem_time[problem] += 20; |
| } |
| else |
| { |
| players[ptr_player].pass[problem] = 1; |
| players[ptr_player].pass_num++; |
| players[ptr_player].final_time += t + players[ptr_player].problem_time[problem]; |
| } |
| } |
| qsort(players, total_players, sizeof(players[0]), cmp); |
| for (int i = 0; i < total_players; i++) |
| printf("%s %d %d\n", players[i].id, players[i].pass_num, players[i].final_time); |
| system("pause"); |
| return 0; |
| } |
| |
| int find_player_number(char player_id[11], int total_players) { |
| for (int i = 0; i < total_players; i++) |
| if (strcmp(player_id, players[i].id) == 0) |
| return i; |
| return total_players; |
| } |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】