1032.挖掘机技术哪家强
来源:互联网 发布:手机如何登陆淘宝卖家 编辑:程序博客网 时间:2024/04/20 22:58
参考了 http://blog.csdn.net/qq_34594236/article/details/51702557 的代码
(好吧其实基本一模一样捂脸哭)
为了用事实说明挖掘机技术到底哪家强,PAT组织了一场挖掘机技能大赛。现请你根据比赛结果统计出技术最强的那个学校。
输入格式:
输入在第1行给出不超过105的正整数N,即参赛人数。随后N行,每行给出一位参赛者的信息和成绩,包括其所代表的学校的编号(从1开始连续编号)、及其比赛成绩(百分制),中间以空格分隔。
输出格式:
在一行中给出总得分最高的学校的编号、及其总分,中间以空格分隔。题目保证答案唯一,没有并列。
输入样例:
6
3 65
2 80
1 100
2 70
3 40
3 0
输出样例:
2 150
#include<iostream>using namespace std;int main(){ int arr[100001] = {0}; int max = 0; int n = 0; int num,score; cin >> n; for(int i = 0;i<n;i++){ cin>>num; cin>>score; //这一句就是来自相同学校的分数相加 arr[num] = arr[num] + score; if(arr[num]>arr[max]){ max = num; } } cout<<max<<" "<<arr[max]; return 0;}
刚开始看题的时候,看到这种输入瞬间想到用结构体数组来做,然后做着做着就被自己困死在结构体里面了(果真刚学会用结构体数组太激动么,丢人= =)。
我开始思路是先全部输入,然后再让每个学校编号相同的分数相加,后面编号和前面编号相同的置为0,加一个判断,如果编号为0证明被加过了。然后在根据得分高低输出学校编号和成绩。我是在前面这步被卡住的,加完之后,没有办法再排成绩高低了= =而且这么做太麻烦了
然后找了别人的做法。
果真能一边输入一边处理的方法才是好方法啧啧啧……
这样用输入的学校编号做数组下标的方法好像不是第一次见了。
还有这个判断的方法,完全不用整个排序找大小,一边加一边比就好了,最后的肯定是最大的。
很好用,五分好评……(捂脸)
1 0
- 1032. 挖掘机技术哪家强
- 1032. 挖掘机技术哪家强
- 1032. 挖掘机技术哪家强
- 1032. 挖掘机技术哪家强
- 1032. 挖掘机技术哪家强
- 1032.挖掘机技术哪家强
- 1032. 挖掘机技术哪家强
- 1032. 挖掘机技术哪家强
- 1032. 挖掘机技术哪家强
- 1032. 挖掘机技术哪家强
- 1032. 挖掘机技术哪家强
- 1032. 挖掘机技术哪家强(20)
- 1032. 挖掘机技术哪家强(20)
- 1032. 挖掘机技术哪家强(20)
- 1032. 挖掘机技术哪家强(20)
- 1032. 挖掘机技术哪家强(20)
- 1032. 挖掘机技术哪家强(20)
- 1032. 挖掘机技术哪家强(20)
- maven4—在Eclipse安装maven插件以及创建maven项目
- EXE内存加载的两种方式(支持win7)
- (4)CSS定位和浮动
- 单例模式
- js 敲回车触发事件
- 1032.挖掘机技术哪家强
- 蓝桥杯_C语言_本科B——调和级数
- python opencv cv2 to process video
- 11.15
- 正则表达式
- 11.16
- 1021.Couples
- Microsoft AD RMS 開發筆記(一) 關於AD RMS筆記系列
- 给敏捷团队中的架构师的10个建议