250x250
반응형
Notice
Recent Posts
Recent Comments
Link
N
(프로그래머스 c++)H-Index 본문
728x90
반응형
정렬을 활용하여 문제를 푸는 방식이다..!
우선 sort()함수를 사용하여 오름차순으로 정렬을 해준다.
그리고 H-Index를 찾기 위해 count 변수를 선언하여 1을 저장.
이제 H-Index를 citations 벡터 안에서 찾으면 된다..!
u는 h번 이상 사용한 횟수, d는 h번 이하 사용한 횟수를 나타낸다.
citations를 돌면서 count 이상이면 u++, count 미만이면 d++을 한다.
그리고 u >= count && d < count && answer < count 이면
answer = count 로 하여 answer 값을 최댓값으로 만들어주면 된다..!
여기서 이상한 문제점은 문제 설명에서는 h번 이상, h번 이하라고 하였는데,
예시를 보면 h번 이상, h번 미만으로 나와있어서..!
헷갈릴 수도 있을 법한 문제였다..!
#include <string>
#include <vector>
#include <algorithm>
using namespace std;
int solution(vector<int> citations) {
int answer = 0, count = 1;
sort(citations.begin(), citations.end());
for(int i = 0; i < citations.size(); i++)
{
int u = 0, d = 0;
for(int j = 0; j < citations.size(); j++)
{
if(citations[j] >= count)
u++;
else
d++;
}
if(u >= count && d < count && answer < count)
answer = count;
count++;
}
return answer;
}
728x90
반응형
'프로그래머스 알고리즘 > 2단계' 카테고리의 다른 글
(프로그래머스 c++)위장 (0) | 2020.05.15 |
---|---|
(프로그래머스 c++)전화번호 목록 (0) | 2020.05.14 |
(프로그래머스 c++)더 맵게 (0) | 2020.05.14 |
(프로그래머스 c++)소수 찾기 (0) | 2020.05.13 |
(프로그래머스 c++)조이스틱 (0) | 2020.05.13 |