본문 바로가기
728x90

알고리즘316

[python] 백준 1072 게임 https://www.acmicpc.net/problem/1072 1072번: 게임 김형택은 지금 몰래 Spider Solitaire(스파이더 카드놀이)를 하고 있다. 형택이는 이 게임을 이길 때도 있었지만, 질 때도 있었다. 누군가의 시선이 느껴진 형택이는 게임을 중단하고 코딩을 하기 시 www.acmicpc.net 문제 해결 버림을 통해 정수만 추출했을 때 변화를 시작하는 횟수를 구하는 문제 단순히 하나씩 시도횟수를 증가시키면 시간초과... (그래서 이분 탐색을 사용!) 99프로 부터는 안바뀐다... 100은 완전한 숫자이기 때문에... 따라서 z>98이면 무조건 -1 CODE x, y = map(int, input().split()) z = (y*100)//x if z>98: #99에서 100은 못.. 2023. 3. 5.
[python] 백준 5639 이진 검색 트리 https://www.acmicpc.net/problem/5639 5639번: 이진 검색 트리 트리를 전위 순회한 결과가 주어진다. 노드에 들어있는 키의 값은 106보다 작은 양의 정수이다. 모든 값은 한 줄에 하나씩 주어지며, 노드의 수는 10,000개 이하이다. 같은 키를 가지는 노드는 없다 www.acmicpc.net 문제 해결 전위 순회(preorder)한 노드의 value 값을 리스트 안에 차례대로 받는다. 인덱스를 차례대로 키워가며 노드의 value 값이 이전보다 작으면 깊이를 늘리지 않고 오른쪽 자식 값으로 가는 규칙이 있다. 이 트리를 후위 순회(postorder)한 결과를 출력하는 것이 문제 인덱스를 이용하여 후위 순회 함수를 만들면 된다. 중간에 노드의 value 값이 이전보다 작아 더.. 2023. 3. 5.
[python] 백준 3190 뱀 https://www.acmicpc.net/problem/3190 3190번: 뱀 'Dummy' 라는 도스게임이 있다. 이 게임에는 뱀이 나와서 기어다니는데, 사과를 먹으면 뱀 길이가 늘어난다. 뱀이 이리저리 기어다니다가 벽 또는 자기자신의 몸과 부딪히면 게임이 끝난다. 게임 www.acmicpc.net 문제 해결 board 좌표를 만들어 뱀의 움직임과 사과가 있는 좌표를 구현할 수 있도록 한다. 뱀이 있는 곳은 1, 사과가 있는 곳은 2로 값을 놓는다. ( 그 외는 0) 방향이 바뀌는 것을 인지해 dictionary를 통해 dict[시간] = '움직이는 방향' 해서 'R'일 경우 'L'일 경우 인덱스 변동으로 방향이 변할 수 있도록 move라는 리스트를 정리한다. ( 동, 남, 서, 북 ) 을 리스트에.. 2023. 3. 5.
[python] 백준 2251 물통 https://www.acmicpc.net/problem/2251 2251번: 물통 각각 부피가 A, B, C(1≤A, B, C≤200) 리터인 세 개의 물통이 있다. 처음에는 앞의 두 물통은 비어 있고, 세 번째 물통은 가득(C 리터) 차 있다. 이제 어떤 물통에 들어있는 물을 다른 물통으로 쏟아 부 www.acmicpc.net 문제 해결 하노이탑 같은 문제 느낌이 들었다. x+y+z = c (c는 상수)이므로 x,y를 변수로 두면 z는 알아서 구해진다. bfs문제로 푸는 것이 좋을 듯 싶다. CODE from collections import deque sender = [0, 0, 1, 1, 2, 2] receiver = [1, 2, 0, 2, 0, 1] limit = list(map(int, inp.. 2023. 2. 28.
728x90