https://www.acmicpc.net/problem/25943
25943번: 양팔저울
입력은 표준입력을 사용한다. 첫 번째 줄에 자갈 개수를 나타내는 양의 정수 $n$ ($2 ≤ n ≤ 10\,000$)이 주어진다. 다음 줄에 $n$ 개의 수들이 주어지는데, 이들은 번호 순서대로 자갈의 무게이다. 자
www.acmicpc.net
문제 풀이
규칙에 맞게 왼쪽 저울과 오른쪽 저울에 자갈을 놓은 다음, 차이 값만큼을 100g 부터 무게 추를 추가했다.
최종적으로 추가적으로 필요한 무게추의 최소 개수를 출력한다.
소스 코드
#include <iostream>
using namespace std;
int chu[8] = { 100,50, 20, 10, 5, 2, 1 };
int input[10001] = { 0 };
int main() {
int n;
cin >> n;
for (int i = 0; i < n; i++) {
cin >> input[i];
}
int left_wgt = input[0];
int right_wgt = input[1];
for (int j = 2; j < n; j++) {
if (left_wgt <= right_wgt)
left_wgt += input[j];
else if (left_wgt > right_wgt)
right_wgt += input[j];
}
int result = 0;
int diff = abs(left_wgt - right_wgt);
for (int i = 0; i < 7; i++) {
if (diff / chu[i] > 0) {
result += diff / chu[i];
diff = diff % chu[i];
}
}
cout << result << '\n';
}
'알고리즘' 카테고리의 다른 글
[백준] 25953번 템포럴 그래프 C++ 문제풀이 (0) | 2023.09.23 |
---|---|
[백준] 25945번 컨테이너 재배치 C++ 문제풀이 (0) | 2023.09.23 |
[백준] 26111번 Parentheses Tree C++ 문제풀이 (0) | 2023.09.22 |
[백준] 15486번 퇴사 2 C++ 문제풀이 (0) | 2023.09.15 |
[백준] 2293번 동전 1 C++ 문제풀이 (0) | 2023.09.14 |