1032 挖掘机技术哪家强 (20 分)(c语言)
生活随笔
收集整理的這篇文章主要介紹了
1032 挖掘机技术哪家强 (20 分)(c语言)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
為了用事實說明挖掘機技術到底哪家強,PAT 組織了一場挖掘機技能大賽。現請你根據比賽結果統計出技術最強的那個學校。
輸入格式:
輸入在第 1 行給出不超過?105?的正整數?N,即參賽人數。隨后?N?行,每行給出一位參賽者的信息和成績,包括其所代表的學校的編號(從 1 開始連續編號)、及其比賽成績(百分制),中間以空格分隔。
輸出格式:
在一行中給出總得分最高的學校的編號、及其總分,中間以空格分隔。題目保證答案唯一,沒有并列。
輸入樣例:
6 3 65 2 80 1 100 2 70 3 40 3 0輸出樣例:
2 150鳴謝用戶 米泰亞德 補充數據!
#include <stdio.h> #pragma warning (disable:4996) #include<stdlib.h> int book[100000000] = { 0 }; int main() {int N;int haoma,chengji,max=0;scanf("%d", &N);for (int cnt = 0; cnt < N; cnt++) {scanf("%d %d", &haoma, &chengji);book[haoma] += chengji;if(book[max]<=book[haoma]) max=haoma;}printf("%d %d", max, book[max]);return 0;}這道題思路其實很簡單,就是用桶就完事了
我踩過的坑:
1.看清楚題目,有重復的編號
2.不能另外循環一次刷桶,因為意義不一樣,有可能有1 0,這種數據,下面是我當時寫錯的代碼
#include <stdio.h> #pragma warning (disable:4996) #include<stdlib.h> int book[100000000] = { 0 }; int main() {int N;int haoma,chengji;scanf("%d", &N);for (int cnt = 0; cnt < N; cnt++) {scanf("%d %d", &haoma, &chengji);book[haoma] += chengji;}int max_pos = 0,max=0;for (int cnt = 0; cnt < N; cnt++) {if (book[max_pos] <= book[cnt]) {max_pos = cnt;}}printf("%d %d", max_pos, book[max_pos]);return 0;}3.<=不能省,因為我這里設max為0,而如果系統就只有2 0這一個數據,就沒了
總結
以上是生活随笔為你收集整理的1032 挖掘机技术哪家强 (20 分)(c语言)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 1030 完美数列 (25 分)(c语言
- 下一篇: CTF EasyStrcmp