swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV13zo1KAAACFAYh&categoryId=AV13zo1KAAACFAYh&categoryType=CODE&&&

 

SW Expert Academy

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

swexpertacademy.com


  • 점수는 0 ~ 100 사이이기 때문에, 단순하게 입력받은 데이터들을 인덱스로 사용해서 빈도수를 체크해주면 된다.
  • 다만 테스트케이스 번호도 매번 입력받는 것을 주의해야 한다.

#include <iostream>

using namespace std;

int t;
int answer, temp;
int data[101];

int main(void)
{
    cin.tie(0);
    ios_base::sync_with_stdio(0);

    cin >> t;

    for(int i = 0 ; i < t ; i++)
    {
        cin >> temp;
        for(int d = 0 ; d <= 100 ; d++)
        {
            data[d] = 0;                                // 매 케이스마다 빈도수 초기화
        }
        answer = 0;
        for(int d = 0 ; d < 1000 ; d++)
        {
            cin >> temp;                                // 입력받은 데이터들을 가지고 빈도수 카운트
            data[temp]++;
        }
        for(int d = 0 ; d <= 100 ; d++)
        {
            if(data[d] >= data[answer]) answer = d;     // 최빈값 업데이트, 동일값이 있을 시 더 큰 값으로 갱신
        }
        cout << "#" << i + 1 << " " << answer << '\n';
    }
}

'PS > SWEA' 카테고리의 다른 글

[SWEA] 1284.cpp : 수도 요금 경쟁  (0) 2020.08.31
[SWEA] 1954.py : 달팽이 숫자  (0) 2020.07.27
[SWEA] 1974.py : 스도쿠 검증  (0) 2020.07.23
[SWEA] 1989.py : 초심자의 회문 검사  (0) 2020.07.15
[SWEA] 2001.py : 파리 퇴치  (0) 2020.07.14

+ Recent posts