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

 

이번에 볼 문제는 백준 13698번 문제인 Hawk eyes이다.
문제는 아래 링크를 확인하자.

https://www.acmicpc.net/problem/13698 

 

13698번: Hawk eyes

첫째 줄에 재열이가 컵을 섞는 순서가 주어진다. 이 순서는 위 그림에 있는 A, B, C, D, E, F 중 하나이다. 재열이는 컵을 최대 200번 섞는다.

www.acmicpc.net

주어진 문자열을 읽고 문자별로 swap을 이용하여 주어진 두 컵에 담긴 내용물을 바꾸는 것을 반복해 문제를 해결하자.

 

이 과정에서 switch문을 이용하면 구현을 편하게 할 수 있다.

 

아래는 제출한 소스코드이다.

#include <iostream>
#include <utility>
#include <string>
using namespace std;

int arr[5] = { 0,1,0,0,2 };

int main() {
	ios::sync_with_stdio(0);
	cin.tie(0);

	string s; cin >> s;
	for (auto& l : s) {
		switch (l) {
		case 'A':swap(arr[1], arr[2]); break;
		case 'B':swap(arr[1], arr[3]); break;
		case 'C':swap(arr[1], arr[4]); break;
		case 'D':swap(arr[2], arr[3]); break;
		case 'E':swap(arr[2], arr[4]); break;
		case 'F':swap(arr[3], arr[4]); break;
		}
	}

	for (int i = 1; i < 5; i++) {
		if (arr[i] == 1) cout << i << '\n';
	}
	for (int i = 1; i < 5; i++) {
		if (arr[i] == 2) cout << i << '\n';
	}
}
728x90

'BOJ' 카테고리의 다른 글

[BOJ 26594 // C++] ZOAC 5  (0) 2022.12.24
[BOJ 17264 // C++] I AM IRONMAN  (0) 2022.12.24
[BOJ 5346 // C++] Frodo Sequence  (0) 2022.12.23
[BOJ 26711 // C++] A+B  (0) 2022.12.23
[BOJ 26516 // C++] Mutint  (0) 2022.12.23

+ Recent posts