算法入門——模擬二

分析:

1、N(多)行輸入   

2、學校編號累計分數可以考慮數組和結構體,一般用數組。(什麼時候用數組,什麼時候用結構體需要做題總結一下)細節數組大小初始值10^5(100000設置時應該是100010,稍微大點)。max可以設計爲常量const,也可以設計爲全局變量。常量也要具體指明是那種數據類型例如const int mas=10010;

3、需要累加的就不用單獨設計變量了,直接累加。(什麼時候用二位數組什麼時候用一維數組需要總結一下)學校號爲數組標號,直接累加

4、尋找最大值,MAX初始值應該是最小值,只要遇到一個大的數就替換,不斷替換直到找到最大值

5、輸出不僅要輸出最大值還需要輸出最大值對應的學校編號,因此需要設計一個變量記錄

測試案例

6
3 65
2 80
1 100
2 70
3 40
3 0
150

#include<stdio.h>
#include<string.h>
#include<math.h>
const int max=10010;
int main(){
	int i,k=0,N,a[max],MAX=-1;
	//metset(a,0,sizeof(a));
	scanf("%d",&N);
	for(i=0;i<N;i++){
		a[i]=0;
	}
	for(i=0;i<N;i++){
		int j,b;
		scanf("%d%d",&j,&b);
		a[j]+=b;
	}
	for(i=0;i<N;i++){
		if(a[i]>MAX){
			MAX=a[i];
			k=i;
		}
	}
	printf("%d %d",k,MAX);
	return 0;
}

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章