점수가 0점부터 100점까지라고 볼때
배열을 점수 갯수만큼 만들어주고
N명 입력을 받기전에 클리어한다.
int scoreHistogram[100 + 1];
for(int i = 0; i < 101; ++i) scoreHistogram[i] = 0;
점수를 N 명 입력받을때, scoreHistogram의 각 점수별 카운트를 증가시킨다.
아래를 N 번 순회...
int score;
scanf("%d", &score);
scoreHistogram[score]++;
N명을 다 입력 받은 후, 3번째를 찾고 싶으면 배열안에 카운트 된 값을 누적해 비교한다.
int order = 3;
int sum = 0;
int position;
for(position = 100; position >= 0 && (sum += scoreHistogram[position]) < order; --position);
루프를 빠져나왔을때의 position 이 곧 세번째의 점수, scoreHistogram[position] 값이 곧 빈도수가 된다.
ㅇㅇ
해주지 말란 말이야..
이거 보고 짤 수 있으면 다녀도 되고 아니면 전과 ㄱㄱ. 해주든 말든 내 맘이지.
복받아라 진짜 넌 복 받아야댐