[Lv2] 행렬 테두리 회전하기(python)
1. 문제 https://programmers.co.kr/learn/courses/30/lessons/77485 코딩테스트 연습 - 행렬 테두리 회전하기 6 6 [[2,2,5,4],[3,3,6,6],[5,1,6,3]] [8, 10, 25] 3 3 [[1,1,2,2],[1,2,2,3],[2,1,3,2],[2,2,3,3]] [1, 1, 5, 3] programmers.co.kr 2. 접근 방법 - 파이썬으로 푸는 방법이 생각이 안나서 다른 풀이를 보고 참고했음.... 얼른 파이썬 익숙해지자 흑흑 - 난 전체 배열을 복사하려 했는데, 한 개의 값만 저장해놓고 값을 뒤에서( 현재 값 기준 반시계 방향의 값)을 땡겨서 가져온 후 맨 마지막에 저장했던 값을 넣는 방식으로 푸는 방식도 있었다. 다음부턴 다른 풀이 참..
더보기
[1874]스택수열(C++)
1. 문제 www.acmicpc.net/problem/1874 1874번: 스택 수열 1부터 n까지에 수에 대해 차례로 [push, push, push, push, pop, pop, push, push, pop, push, push, pop, pop, pop, pop, pop] 연산을 수행하면 수열 [4, 3, 6, 8, 7, 5, 2, 1]을 얻을 수 있다. www.acmicpc.net 2. 접근 방법 1) 스택에는 값을 "오름차순"으로 넣을 수 있다 => 내가 이번에 찾을 순열 값과 스택의 top을 비교해보면 스택에 내가 찾은 값이 있는지 알 수 있다. 한번이라도 넣었는지를 알 수 있다. - s.top() < v[idx] : 아직 스택에 v[idx]가 들어온 적이 없거나 혹은 전에 한번 넣었는데 po..
더보기
[11048] 이동하기(C++/DP)
1. 문제 www.acmicpc.net/problem/11048 11048번: 이동하기 준규는 N×M 크기의 미로에 갇혀있다. 미로는 1×1크기의 방으로 나누어져 있고, 각 방에는 사탕이 놓여져 있다. 미로의 가장 왼쪽 윗 방은 (1, 1)이고, 가장 오른쪽 아랫 방은 (N, M)이다. 준규는 www.acmicpc.net 2. 접근 방법 1) 이동방향이 (r+1, c), (r, c+1), (r+1, c+1) 이므로 사이클은 생기지 않는다. (1,1)->(N,M)까지 갈 수 있는 경우의 수를 구하려고 했다. 2) candy[i][j]가 (i,j)번째 도착했을 때 얻을 수 있는 최대 사탕 개수라고 할 때, candy[i][j]는 미로의 (i,j)번째 방에 놓인 사탕의 수 + (i,j)에 오기 직전까지 가장 ..
더보기