Machineboy空
https://www.acmicpc.net/problem/13913 13913번: 숨바꼭질 4 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 www.acmicpc.net 문제요약 1칸 좌우 이동, 2배 이동이 가능할 때, 도착점으로 가는 최단 시간과 궤적 나타내기 난이도 Gold 4 풀이 포인트 prev에 계속 쌓아두며 역추적해가는 방법 for문 사용법 for (int next : {now - 1, now + 1, now * 2}) REVIEW 우선 너무 오랜만에 풀어서 using namespace std 구문도 낯설어질 뻔..
https://www.acmicpc.net/problem/12851 12851번: 숨바꼭질 2 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 때 www.acmicpc.net 문제요약 1칸 좌우 이동, 2배 이동이 가능할 때, 도착점으로 가는 최단 시간과 경우의 수 구하기. 난이도 Gold 4 풀이 포인트 bfs 응용 방문한 적 없다면 이동 시간 누적 cnt 배열 경로의 수는 지금까지의 경로의 수에 누적해주는 방식 방문한 적 없다면 현재 위치까지의 경우의 수 + 다음 정점의 경우의 수 방문한 적 있고, 현재 노드에서 간 적 있는 ..
https://www.acmicpc.net/problem/16637 16637번: 괄호 추가하기 길이가 N인 수식이 있다. 수식은 0보다 크거나 같고, 9보다 작거나 같은 정수와 연산자(+, -, ×)로 이루어져 있다. 연산자 우선순위는 모두 동일하기 때문에, 수식을 계산할 때는 왼쪽에서부터 순 www.acmicpc.net 문제요약 괄호를 추가하여 식의 최댓값 구하기 난이도 Gold 3 풀이 포인트 숫자와 기호 나누어 생각하기 재귀의 반복 동작 파악 REVIEW 우선 괄호를 친다는 것이 실제로 string 사이에 실물 괄호를 쳐주는 것이 아닌, 먼저 연산을 하면 된다는 것을 파악하고, stack에 쌓으며 pop을 해줄까 하는 아이디어를 떠올렸다. 다음으로는, string 수식을 어떻게 사칙연산으로 바꾸..
https://www.acmicpc.net/problem/12869 12869번: 뮤탈리스크 1, 3, 2 순서대로 공격을 하면, 남은 체력은 (12-9, 10-1, 4-3) = (3, 9, 1)이다. 2, 1, 3 순서대로 공격을 하면, 남은 체력은 (0, 0, 0)이다. www.acmicpc.net 문제요약 hp가 0이 될 때까지 공격 최소 횟수 난이도 Gold 4 풀이 포인트 Struct 사용법 // 세 개 부터는 튜플인데, 귀찮으니 struct struct A{ int a,b,c; }; queueq; 그래프로 치환하여 생각하기 음수 막아주는 코드 int na = max(0, a - _a[i][0]); int nb = max(0, b - _a[i][1]); int nc = max(0, c - _..