-
제2회 천하제일 코딩대회 본선 문제 풀이
대회 정보: https://www.acmicpc.net/contest/view/310 문제 목록: https://www.acmicpc.net/category/detail/1892 ((아주)많이) 늦은 업로드 죄송합니다 ㅎ하하하하;;;; 출제진 여러분들께 감사의 말씀 올립니다. 풀이 슬라이드: https://goo.gl/3bT6xk 아무말 백준, 백준 온라인 저지, BOJ, Baekjoon Online Judge, wookje, 욱제, 풀이, 선린, 선린인터넷고등학교, sunrin, 문제 풀이, 제2회 천하제일 코딩대회, 15916 가희는 그래플러야!!, 15917 노솔브 방지문제야!!, 15918 랭퍼든 수열쟁이야!!, 15919 사자는 여행왕이야!!, 15920 선로에 마네킹이야!!, 15921 수찬은 마린보이야!!, 15922 아우으 으아으이야!!, 15923 욱제는 건축왕이야!!, 15924 욱제는 사과팬이야!!, 15925 욱제는 정치쟁이야!!, 15926 현욱은 괄호왕이야!!, 15927 회문은 회문아니야!!...
-
[BOJ] 3114 : 사과와 바나나
3114 : 사과와 바나나 풀이 A는 prefix 누적합, B는 suffix 누적합을 구해주자. 불도저가 [i][j]로 오는 방법은 [i-1][j-1], [i-1][j], [i][j-1] 이 세 가지가 있다. 모든 i, j를 돌면서, 위의 세 가지 경우에 대해 최댓값을 계산해주자. i=1이거나 j=1인 경우의 예외 케이스에 주의하자. 코드 #include <cstdio> #include <cstdlib> #include <algorithm> using namespace std; int n, m, i, j, a[1502][1502], b[1502][1502], d[1502][1502]; char s[9]; int main() { scanf("%d %d", &n, &m); for (i = 1; i <= n; i++)...
-
[BOJ] 16174 : 점프왕 쩰리 (Large)
16174 : 점프왕 쩰리 (Large) 풀이 잘 짜주면 된다. 코드 #include <cstdio> int n, i, j, x, a[66][66] = {1}; int main() { scanf("%d", &n); for (i = 0; i < n; i++) for (j = 0; j < n; j++) { scanf("%d", &x); if (!a[i][j]) continue; if (i+x < n) a[i+x][j] = 1; if (j+x < n) a[i][j+x] = 1; } puts(a[n-1][n-1] ? "HaruHaru" : "Hing"); return 0; } 아무말 백준, 백준 온라인 저지,...
-
[BOJ] 16173 : 점프왕 쩰리 (Small)
16173 : 점프왕 쩰리 (Small) 풀이 잘 짜주면 된다. 코드 #include <cstdio> int n, i, j, x, a[66][66] = {1}; int main() { scanf("%d", &n); for (i = 0; i < n; i++) for (j = 0; j < n; j++) { scanf("%d", &x); if (!a[i][j]) continue; if (i+x < n) a[i+x][j] = 1; if (j+x < n) a[i][j+x] = 1; } puts(a[n-1][n-1] ? "HaruHaru" : "Hing"); return 0; } 아무말 백준, 백준 온라인 저지,...
-
[BOJ] 16172 : 나는 친구가 적다 (Large)
16172 : 나는 친구가 적다 (Large) 풀이 kmp 잘 짜주면 된다. 코드 #include <iostream> #include <string> using namespace std; int fail[200022]; string a, t, p; int main() { ios_base::sync_with_stdio(0); cin.tie(0); cin >> a >> p; for (auto it : a) if (it < '0' || it > '9') t.push_back(it); for (int i = 1, j = 0; i < p.length(); ++i) { while (j && p[i] != p[j]) j = fail[j - 1]; if (p[i]...