지우너

[SWEA] 1204. [S/W 문제해결 기본] 1일차 - 최빈수 구하기 C++ 본문

Problem Solving

[SWEA] 1204. [S/W 문제해결 기본] 1일차 - 최빈수 구하기 C++

지옹 2024. 11. 13. 12:53

문제

https://swexpertacademy.com/main/code/problem/problemDetail.do?problemLevel=2&contestProbId=AV13zo1KAAACFAYh&categoryId=AV13zo1KAAACFAYh&categoryType=CODE&problemTitle=&orderBy=FIRST_REG_DATETIME&selectCodeLang=ALL&select-1=2&pageSize=10&pageIndex=1

 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

swexpertacademy.com

 

코드

#include<iostream>

using namespace std;

const int MAX_STUDENT=1000;
const int MAX_SCORE=100;

int main(int argc, char** argv)
{
	int test_case;
	int T;
	cin>>T;
    
	for(test_case = 1; test_case <= T; ++test_case)
	{
        int t_num;
    	cin >> t_num;
        
		int score_cnt[MAX_SCORE+1]={0, };
        for(int i=1; i<=MAX_STUDENT; ++i){
        	int score;
            cin >> score;
            score_cnt[score]++;
        }
        
        int max_score=0, max_cnt=0;
        for(int i=0; i<=MAX_SCORE; ++i){
        	if(score_cnt[i]>=max_cnt){
            	max_score=i;
                max_cnt=score_cnt[i];
            }
        }
        
        cout << "#" << test_case<< " " << max_score << '\n';
	}
	return 0;
}