인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

Inflearn Community Q&A

정재윤's profile image
정재윤

asked

10-Week C++ Coding Test | Algorithm Coding Test

2-G

2-G 질문입니다.

Resolved

Written on

·

207

0

안녕하세요 강사님.

pair를 사용하지 않고 풀어보려고 했습니다.
TC는 통과하는데 틀리다고 나오네요.

피드백 가능할까요?

 

http://boj.kr/9f1f4e5b3eed497997feb57514fe3bcf

c++코딩-테스트

Answer 1

0

kundol님의 프로필 이미지
kundol
Instructor

안녕하세요 재윤님 ㅎㅎ

카운팅하는 mp, 맨첨을 나타내는 ch 다 잘짜셨는데요.

    for(int i = 0; i < n; i++) {
        if(ch.find(a[i]) == ch.end()) {
            v.push_back(a[i]);
            ch[a[i]]++;
        }
    }
    sort(v.begin(), v.end(), cmp);

이 코드를 보면요 애초에 v에는 처음 온 순서대로 담기게 됩니다.

1 1 1 2 2 2 3 3 3이라면

1, 2, 3 이렇게 담기겠죠?

그러나 갑자기 여기서 sort를 합니다.

이 sort는 카운팅을 따져서 빈도가 높은 순데로 정렬을 하죠.

자 근데 여기서

빈도가 같다면 먼저 온게 앞에 두는 로직은 어디있나요?

그래서 틀린 것 같습니다. ㅎㅎ

 

감사합니다.

정재윤's profile image
정재윤

asked

Ask a question