티스토리 뷰
728x90
문제 링크
https://www.acmicpc.net/problem/15920
단순 구현? 시뮬레이션? 문제다.
state를 정의하자
state == 0 일때 마네킹 5개가 날아가고
state == 1 일때 마네킹 1개가 날아가고
state == 2 일때 마네킹 6개가 모두 날아가는 걸로 하자.
P가 나올때마다 state의 상태를 0 ~ 1 사이에서 반전시키는데, W가 한 번 나온 상황에서 P가 나온다면 state를 2로 고정시키자.
W가 2번 나왔을 때 답을 출력하고 종료하자.
정답 코드
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <iostream> | |
#include <string> | |
using namespace std; | |
string s; | |
int main() { | |
int n; | |
cin >> n; | |
cin >> s; | |
int w = 0, state = 0; | |
for (int i = 0; s[i]; i++) { | |
if (s[i] == 'W') { | |
if (++w == 2) { | |
if (state == 0) cout << 5; | |
else if(state == 1) cout << 1; | |
else cout << 6; | |
return 0; | |
} | |
} | |
else if (s[i] == 'P') { | |
if(state < 2) state ^= 1; | |
if (w == 1) { | |
state = 2; | |
} | |
} | |
} | |
cout << 0; | |
} |
질문, 피드백 환영합니다.
728x90
'알고리즘 > 문제 풀이' 카테고리의 다른 글
[BOJ] 백준 15922 아우으 우아으이야!! (0) | 2018.07.25 |
---|---|
[BOJ] 백준 15921 수찬은 마린보이야!! (0) | 2018.07.25 |
[BOJ] 백준 15918 랭퍼든 수열쟁이야!! (2) | 2018.07.25 |
[BOJ] 백준 15917 노솔브 방지문제야!! (2) | 2018.07.25 |
[BOJ] 백준 15916 가희는 그래플러야!! (0) | 2018.07.25 |