https://www.acmicpc.net/problem/16283
문제 풀이
이 문제 구현은 굉장히 간단했다.
a * i + b *(n-i) == w 인지만 확인하면 되는건데, 문제에서 작은 디테일들에서 계속 실수를 했다.
1) 기르는 양과 염소는 각각 한 마리 이상이다
2) 만약 가능한 해가 2개 이상이거나 해가 없을 경우 -1을 출력한다
이 2개를 제대로 안 읽고 몇 번 틀렸다... ㅎ
다음부터는 문제를 잘 읽어야겠다!
소스 코드
#include <iostream>
using namespace std;
int main() {
int a, b, n, w;
int finds = 0;
int idx = 0;
cin >> a >> b >> n >> w;
for (int i = 1; i < n; i++) {
if (a * i + b * (n - i) == w) {
idx = i;
finds += 1;
}
}
if (finds == 1 ) {
cout << idx << " " << n - idx << '\n';
}
else {
cout << "-1" << '\n';
}
}
'알고리즘' 카테고리의 다른 글
[백준] 17626번 Four Squares C++ 문제풀이 (1) | 2023.10.13 |
---|---|
[백준] 17521번 Byte Coin C++ 문제풀이 (0) | 2023.10.13 |
[백준] 20040번 사이클 게임 C++ 문제풀이 (0) | 2023.10.05 |
[백준] 20044번 Project Teams C++ 문제풀이 (0) | 2023.10.03 |
[백준] 23246번 Sport Climbing Combined C++ 문제풀이 (1) | 2023.10.03 |