※ 글쓴이는 취미로 코딩을 익혀보는 사람이라 정확하지 않은 내용을 담고 있을 수 있다 ※

 

이번에 볼 문제는 백준 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

+ Recent posts