알고리즘 공부/C++

백준 10801번 카드게임 C++

마달랭 2024. 7. 21. 15:44
반응형

리뷰

총 10판의 게임에서 더 많이 이긴사람을 출력하는 문제

 

문제 풀이

  1. 벡터 A, B에 각 줄의 숫자를 입력받아준다.
  2. 각 벡터의 인덱스를 비교하여 더 높은 숫자를 제시한 플레이어의 점수를 올려준다.
  3. 반복문이 종료된 후 더 높은 점수를 가진 플레이어의 이름을 출력해 준다.

 

참고 사항

점수가 같거나 동일한 숫자의 카드를 제시했을 경우 무승부 처리해 주어야 한다.

 

 

정답 코드

#include <iostream>
#include <vector>

using namespace std;

int main() {
	int n = 10, p1, p2;
	p1 = 0, p2 = 0;
	vector<int> a(10);
	vector<int> b(10);
	for (int i = 0; i < 20; i++) {
		if (i < 10) cin >> a[i];
		else cin >> b[i - 10];
	}
	while (n--) {
		if (a[n] == b[n]) continue;
		else if (a[n] > b[n]) p1++;
		else p2++;
	}
	if (p1 == p2) cout << "D\n";
	else if (p1 > p2) cout << "A\n";
	else cout << "B\n";
}

 

 

728x90
반응형