반응형
https://www.acmicpc.net/problem/10801
문제
두 사람 A와 B는 1부터 10까지의 숫자가 하나씩 적힌 열 장의 카드로 ‘게임’을 한다. 게임은 총 열 번의 ‘라운드’로 구성되고, 각 라운드마다 자신이 가지고 있는 카드 중 하나를 제시하고, 한 번 제시한 카드는 버린다. 게임 승패는 다음과 같이 결정된다.
- 각 라운드는 더 높은 숫자를 제시한 사람이 승리하고, 제시한 숫자가 같은 경우는 비긴다.
- 열 번의 라운드에서 더 많은 라운드를 승리한 사람이 게임을 승리하고, 승리한 라운드 횟수가 동일한 경우 비긴다.
다음은 게임의 한 예로, 각 라운드마다 A와 B가 제시한 카드의 숫자와 각 라운드의 승자를 보여준다. (비긴 라운드는 D로 표시함)
6 | 7 | 5 | 1 | 4 | 10 | 2 | 3 | 8 | 9 |
1 | 10 | 2 | 9 | 4 | 8 | 3 | 7 | 5 | 6 |
A | B | A | B | D | A | B | B | A | A |
A는 5번의 라운드에서 승리하고 B는 4번의 라운드에서 승리하였으므로, 이 게임은 A가 승리한다.
라운드 순서대로 A와 B가 제시한 카드의 숫자가 주어졌을 때, 게임의 승자를 판단하는 프로그램을 작성하시오
풀이
for문으로 A의 대한 10개 입력을 받고
또 for문으로 B의 대한 10개 입력을 받는다.
그리고 마지막 for문으로 A,B를 비교해서 누가 이겼는지 코드를 작성하면 된다.
코드
#include <iostream>
using namespace std;
int main() {
int a[10];
int b[10];
int aw=0,bw=0;
for(int i=0; i<10; i++){
cin>>a[i];
}
for(int i=0; i<10; i++){
cin>>b[i];
}
for(int i=0; i<10; i++){
if(a[i]>b[i]){
aw++;
}
else if(b[i]>a[i]){
bw++;
}
}
if(aw>bw) cout<<"A";
else if(bw>aw) cout<<"B";
else cout<<"D";
}
|
cs |
반응형
'백준 > C++' 카테고리의 다른 글
[BaeKJoon/C++] 백준2920 c++ 음계 (0) | 2021.07.11 |
---|---|
[BaeKJoon/C++] 백준5597 c++ 과제 안 내신 분..? (0) | 2021.07.11 |
[BaeKJoon/C++] 백준4493 c++ 가위 바위 보? (0) | 2021.07.01 |
[BaeKJoon/C++] 백준10768 c++ 특별한 날 (0) | 2021.06.30 |
[BaeKJoon/C++] 백준5524 c++ 입실 관리 (0) | 2021.06.30 |