아이디어 중심이 되는 값에 얼마가 있는지 확인 -> 최대한 규칙을 찾아보려고 함 1) "* "가 2칸씩 규칙적으로 나온다는 사실 발견 + "*" 몇개 입력가능한지 확인 2) 대칭되는 지점을 기준으로 규칙 발견 3) 홀수, 짝수로 나눠 값 도출 코드
아이디어 start -> final로 모든 원판을 이동한다면, 결국 모든 원판이 final로 이동되어야 하기 때문에 middle은 원판을 움직이기 위해 사용되는 보조기둥이다. 최종적으로는 final로 원판이 이동해야 한다. 원판이 총 n개라면 n-1개를 보조기둥으로 이동하고 가장 큰 원판을 final에 이동 후, 보조기둥에 뒀던 n-1개를 final로 ...
1차 코드 > 초기에 컨테이너 위에 로봇은 하나도 없음 단계를 수행하면서 로봇이 올려지는 것 2차 코드 > 시간초과 -> 스스로도 시간초과가 나겠구나 생각하긴 했음..ㅜㅜ 3차 아이디어 1) sys 사용 -> input시간 축소 > 기존 N = map(int,input().split() 수정 import sys N = map(int,sys.stdin...
1차 아이디어 1) 6과 9는 호환이 가능하다고 했으므로 입력받은 값에서 6을 9로 치환해준다 + list변환 -> replace 함수 사용 2) list에 있는 값들을 count한 값을 새로운 배열에 넣어준다. 이때, 9는 6과 호환해서 사용이 가능하기 때문에 카드 세트는 count된 값 / 2한 만큼만 필요하다. 3) count된 값들 중 가장 큰 값이...
아이디어 > 팰린드롬 거꾸로 읽어도 제대로 읽는 것과 같은 문장이나 낱말, 숫자, 문자열 1) 입력받은 문자열을 (알파벳, 문자열에 알파벳이 들어있는 횟수)로 묶어서 집합을 만든다. -> 이때, 횟수를 짝수, 홀수로 나누어서 분류해준다. 2) 만약, 홀수 횟수를 가지는 알파벳이 1개이상이라면 이는 팰린드롬이 될 수 없기 때문에 I'm Sorry Hanso...
아이디어 문제에서 규칙을 찾으려고 했고, 그 규칙은 상자가 하나 늘어날 때마다 움직이는 정도가 2배씩 늘어난다는 것이었다. 예를 들어, N = 3인 경우에는 1을 제외하고 나머지 값들이 2칸씩 우,하,좌,상 방향으로 이동한다. N = 5인 경우에는 N = 3인 경우를 충족시킨 뒤, 4칸씩 우,하,좌,상 방향으로 이동한다. 이 부분을 통해 위치를 이동시키는 ...
아이디어 중요한 조건- 2-4번 과정을 진행하는 것은 도도와 수연이 모두 진행하는 것이 아니라 순서에 맞게 번갈아가면서 진행하는 것이다. 첫 시도에서 문제를 잘못 읽은 부분 - 종을 치고 그라운드에 있는 카드를 덱으로 가져올 때 상대방의 카드를 먼저 자신의 덱으로 합친 뒤, 자신의 카드를 합쳐야 하는데 이를 반대로 읽고 이해했음... > 문제의 키포인트 ...
1차 아이디어 1) 한 묶음의 카드만 있다면 0번 비교 2) 카드 묶음을 오름차순 정렬 3) 한 묶음보다 많은 카드 묶음이 있다면, A+B 비교 -> 예시 10, 20, 30 이 있다면 => (10+20) + (30+30) = 총 90번의 비교가 최솟값 코드 2차 아이디어 1차시도에서는 초기 두 값은 무조건 비교하고 그 이후로는 하나의 묶음을 추가할 때...
15686 치킨 배달 문제 조합을 사용하여 최대 M개의 치킨집을 구한뒤, min함수를 사용하여 최솟값을 구하였다. 구현만 하면 되는 문제여서 비효율적이나 반복문을 많이 사용하였다. 3190 뱀 문제 뱀 문제를 보고 처음 든 생각 1) NxN , 90도 회전 -> BFS에서 많이 사용했던 dx,dy 방향 리스트와 범위체크를 활용하면 되겠다. 2) 꼬리 ...