알고리즘/백준

[c++] 5800번: 성적 통계

녕이 2022. 1. 14. 15:40
728x90

https://www.acmicpc.net/problem/5800

 

5800번: 성적 통계

첫째 줄에 중덕 고등학교에 있는 반의 수 K (1 ≤ K ≤ 100)가 주어진다. 다음 K개 줄에는 각 반의 학생수 N (2 ≤ N ≤ 50)과 각 학생의 수학 성적이 주어진다. 시험 성적은 0보다 크거나 같고, 100보다

www.acmicpc.net

 

문제 요약

 

각 반의 학생들의 수학 시험 성적의 최대 점수, 최소 점수, 점수 차이를 구하는 프로그램을 작성해라.

 

 


 

//5800번: 성적 통계
#include <iostream>
#include <algorithm>
using namespace std;
int k, n, x[101], LG;

void solution(int index){
    LG = -1;
    cout << "Class " << index << '\n';
    sort(x, x+n, greater<>());
    for(int i=0; i<n-1; i++) LG = (x[i] - x[i+1]) > LG ? x[i] - x[i+1] : LG;
    cout << "Max " << x[0] << ", Min " << x[n-1] << ", Largest gap " << LG << '\n';
}

int main() {
    ios::sync_with_stdio(0); cout.tie(0); cin.tie(0);
    cin >> k;
    for(int i=0; i<k; i++){
        cin >> n;
        for(int j=0; j<n; j++) cin >> x[j];
        solution(i+1);
    }
    return 0;
}

 

 

 

 

 

💡공부 및 기록용 블로그이므로 오류가 있을 수 있습니다.💡

만약 문제에 오류나 오타가 있다면 댓글로 알려주세요➿
언제나 환영합니다. 감사합니다. 화이팅!

 

728x90