※ 글쓴이는 취미로 코딩을 익혀보는 사람이라 정확하지 않은 내용을 담고 있을 수 있다 ※
이번에 볼 문제는 백준 23663번 문제인 Deja vu of Go Players이다.
문제는 아래 링크를 확인하자.
https://www.acmicpc.net/problem/23663
23663번: Deja vu of Go Players
Output a string in the only line, "Yes" if the red player who moves first can ensure to win, or "No" otherwise, without quotation marks.
www.acmicpc.net
각 player는 자신의 차례에 자신에게 할당된 하나의 돌더미를 골라 그 돌더미에 있는 모든 돌을 제거해나가는 것이 항상 최선의 전략이다. 이 때, red player가 이기기 위해서는 red player가 가지고 있는 돌더미의 수가 white player가 가지고 있는 돌더미의 수보다 적거나 같아야 함을 알 수 있다.
따라서 단순히 돌더미의 수를 비교하는 것으로 문제를 해결할 수 있다.
주어지는 세부적인 입력(즉, 각 돌더미에 들어있는 돌의 개수)을 문제 풀이에 사용하지는 않지만 이를 읽지 않고 넘긴다면 다음 테스트케이스의 입력을 정상적으로 받을 수 없음에 유의하자.
아래는 제출한 소스코드이다.
#include <iostream>
using namespace std;
typedef long long ll;
int T;
int tmp;
int main() {
ios::sync_with_stdio(0);
cin.tie(0);
cin >> T;
while (T--) {
int N, M; cin >> N >> M;
if (N <= M) cout << "Yes\n";
else cout << "No\n";
while (N--) cin >> tmp;
while (M--) cin >> tmp;
}
}
728x90
'BOJ' 카테고리의 다른 글
[BOJ 10168 // C++] 파발마 (0) | 2022.12.09 |
---|---|
[BOJ 26145 // C++] 출제비 재분배 (0) | 2022.12.09 |
[BOJ 24079 // C++] 移動 (Moving) (0) | 2022.12.09 |
[BOJ 24606 // C++] Double Password (0) | 2022.12.09 |
[BOJ 26198 // C++] Chronogram (0) | 2022.12.09 |