[C++] 백준 5800 : 성적 통계
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int K, N;
int x;
int main(int argc, char **argv){
scanf("%d",&K);
for(int i=0; i<K; i++){
int gap = -1; // 오름차순이므로 이전수 - 현재수 < 0 일 수 없다.
vector<int> v;
scanf("%d",&N);
for(int j=0; j<N; j++){
scanf("%d", &x);
v.push_back(x);
}
sort(v.begin(),v.end(), greater<>()); // 내림차순 정렬
for(int j=0; j<N-1; j++){
if(gap < v[j] - v[j+1]){
gap = v[j] - v[j+1];
}
}
printf("Class %d\n", i + 1);
printf("Max %d, Min %d, Largest gap %d\n", v[0], v[N-1], gap);
}
return 0;
}
STL sort 사용하면 아주 쉽게 풀리는 문제!
Author And Source
이 문제에 관하여([C++] 백준 5800 : 성적 통계), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@lamknh/C-백준-5800-성적-통계저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)