티스토리 뷰
백준 :: BOJ :: 3190 :: 뱀
출처 : https://www.acmicpc.net/problem/3190
#include <bits/stdc++.h>
using namespace std;
int N, K, L, ti, tj, dd, ans, m[101][101];
int di[] = {0,1,0,-1}, dj[] = {1,0,-1,0};
deque <pair<int,int>> dq, r;
inline bool chk(int i, int j) { return (i>0&&j>0&&i<=N&&j<=N) ? true : false; }
int main() {
std::ios::sync_with_stdio(false); cin.tie(0);
cin >> N >> K; dq.push_back(make_pair(1, 1)); m[1][1] = -1; dd = 0;
while (K--) {
cin >> ti >> tj; m[ti][tj] = 1;
}
cin >> L;
while (L--) {
char c; cin >> ti >> c;
if (c == 'L') tj = -1;
else tj = 1;
r.push_back(make_pair(ti, tj));
}
while (1) {
ans++;ti = dq.front().first+di[dd]; tj = dq.front().second+dj[dd];
if (chk(ti, tj)) {
if (m[ti][tj]>=0) {
if (m[ti][tj] < 1) {
m[dq.back().first][dq.back().second] = 0; dq.pop_back();
}
dq.push_front(make_pair(ti, tj)); m[ti][tj] = -1;
}
else break;
}
else break;
if (!r.empty() && r.front().first == ans) {
dd += r.front().second; r.pop_front();
if (dd == -1) dd = 3;
else if (dd == 4) dd = 0;
}
}
cout << ans;
return 0;
}
'알고리즘 > BOJ' 카테고리의 다른 글
[BOJ 17143] 낚시왕 (0) | 2019.05.14 |
---|---|
[BOJ 17144] 미세먼지 안녕! (2) | 2019.05.14 |
[BOJ 16235] 나무 재테크 (0) | 2019.01.10 |
[BOJ 16234] 인구 이동 (0) | 2019.01.09 |
[BOJ 16236] 아기 상어 (0) | 2019.01.09 |
- Total
- Today
- Yesterday
- 역량 테스트
- SWEA
- 팁
- 2018 카카오 블라인드 채용
- 17837
- 백준
- DFS
- 입출력
- 17144
- 시간 복잡도
- string
- 이차원 배열과 연산
- boj
- 알고리즘
- 17779
- 새로운 게임 2
- 17142
- 17143
- scanf
- hackerrank
- 2018 KAKAO BLIND RECRUITMENT
- 17140
- SW Expert Academy
- 연구소 3
- STL
- DP
- 미세먼지 안녕!
- 게리맨더링 2
- 트렌드
- 삼성
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |