본문 바로가기

Programming/BOJ2

[BOJ] 2108 통계학 (C++) https://www.acmicpc.net/problem/2108 reviewN개의 숫자를 입력받아서 산술평균, 중앙값, 최빈값, 범위를 출력하는 문제이다. 1. 산술평균은 전체합을 N으로 나눈 값이다. 소수점 첫째 자리에서 반올림해야 하므로 round 함수를 사용했다. -0.333333 같은 수는 첫째 자리에서 반올림하면 -0으로 출력될 수 있는 점을 주의해야 한다. 2. 중앙값은 라이브러리의 sort함수를 이용하여 쉽게 구할 수 있었다. 3. 최빈값이 여러 개 있을 경우에 두 번째로 작은 값을 출력해야하는 문제를 가장 해결하기 어려웠다.정수의 범위가 -4000~4000인 점을 고려하여 8001 크기의 count 배열을 만들었고, 수를 입력받을 때 해당 배열의 값을 증가시키도록 하였다. 첫 번째 .. 2025. 5. 25.
[BOJ] 25206 너의 평점은 (C++) https://www.acmicpc.net/problem/25206 review과목명, 학점, 등급을 입력받아 등급을 점수로 변환해주고, 전공과목별 (학점 × 과목평점)의 합을 학점의 총합으로 나눈 값을 계산해주면 되기 때문에 비교적 간단한 문제였다. C++에서는 문자열의 switch문이 동작하지 않기 때문에 if-else 문을 이용했다. 처음에 등급이 P인 과목은 계산에서 제외해야한다는 점을 고려하지 않고 코드를 작성했다가 예시 문제의 값과 다르게 나왔었다. 등급을 점수로 변환해주는 if-else문을 P가 아닌 경우에만 돌아가도록 조건문으로 감싸주어서 해결했다. C++ code#include #include using namespace std;int main(){ string subject[.. 2025. 5. 22.