• 1032 挖掘机技术哪家强


    一.问题:

    为了用事实说明挖掘机技术到底哪家强,PAT 组织了一场挖掘机技能大赛。现请你根据比赛结果统计出技术最强的那个学校。

    输入格式:

    输入在第 1 行给出不超过 105 的正整数 N,即参赛人数。随后 N 行,每行给出一位参赛者的信息和成绩,包括其所代表的学校的编号(从 1 开始连续编号)、及其比赛成绩(百分制),中间以空格分隔。

    输出格式:

    在一行中给出总得分最高的学校的编号、及其总分,中间以空格分隔。题目保证答案唯一,没有并列。

    输入样例:

    1. 6
    2. 3 65
    3. 2 80
    4. 1 100
    5. 2 70
    6. 3 40
    7. 3 0

    输出样例:

    2 150

    二.思路:

            具体看代码,这一题告诉我们搞一个副本有时候很有用

    三.代码实现(C语言描述):

    1. #include
    2. typedef struct person
    3. {
    4. int school;
    5. int grades ;
    6. }People;
    7. //快速排序,从大到小排序数据
    8. void quick_sort(int *School,int low,int high)
    9. {
    10. int i = low;
    11. int j = high;
    12. int base = low;
    13. int temp = School[low];
    14. int t = 0;
    15. if(i > j)
    16. {
    17. return;
    18. }
    19. while(i < j)
    20. {
    21. while(School[j] <= temp &&i < j)
    22. {
    23. j--;
    24. }
    25. while(School[i] >= temp &&i < j)
    26. {
    27. i++;
    28. }
    29. t = School[i];
    30. School[i] = School[j];
    31. School[j] = t;
    32. }
    33. School[base] = School[i];
    34. School[i] = temp;
    35. //递归
    36. quick_sort(School,low,i-1);
    37. quick_sort(School,i+1,high);
    38. }
    39. int main()
    40. {
    41. //输入数据
    42. int N = 0;
    43. scanf("%d",&N);
    44. int School[N] = {0};
    45. int cpy_School[N] = {0};
    46. People people[N];
    47. for(int i =0;i < N;i++)
    48. {
    49. scanf("%d %d",&people[i].school,&people[i].grades);
    50. }
    51. //整理数据
    52. int sum = 0;
    53. for(int i =0,p=0;i < N;i++)
    54. {
    55. p = (people[i].school)-1;
    56. School[p] += people[i].grades;
    57. cpy_School[p] += people[i].grades;
    58. sum = sum < (p+1) ?(p+1):sum;
    59. }
    60. //从大到小排序数据
    61. quick_sort(School,0,sum-1);
    62. for(int i =0;i < sum;i++)
    63. {
    64. if(School[0] == cpy_School[i])
    65. {
    66. //输出数据
    67. printf("%d %d\n",i+1,School[0]);
    68. }
    69. }
    70. return 0;
    71. }

  • 相关阅读:
    数据分析——埋点
    【ICPR 2021】遥感图中的密集小目标检测:Tiny Object Detection in Aerial Images
    解决5053无法安装驱动的故障
    Python configparser模块详解:配置文件解析利器
    js 处理数组合并vs对象合并
    华为认证云计算专家(HCIE-Cloud Computing)--判断题
    POI及EasyExcel【Java提高】
    H5页面使用iosSelect.js省市县乡村四级联动
    V4L2框架
    聊聊两个Go即将过时的GC优化策略
  • 原文地址:https://blog.csdn.net/2303_76295261/article/details/133849801