PS

PS/코드트리

[코드트리] 술래잡기 (python 정답 코드)

https://www.codetree.ai/training-field/frequent-problems/problems/hide-and-seek/ 코드트리 | 코딩테스트 준비를 위한 알고리즘 정석국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요.www.codetree.ai  문제를 잘 읽자.. 술래의 시야는 3이다.. 끝까지 다 볼 수 있는게 아니다..^^진짜 잔인한게 뭐냐면.. 술래의 시야를 3으로 설정하지 않아도 주어진 테스트를 통과한다..대신 히든 테스트에서 틀린다........ 만약 이 짓을 시험장에서 했으면....? ㅋ 코드를 다 작성하고 예제를 다 통과해도... 반드시 문제를 다시 읽으면서 제대로 구현했는지 확인해야겠다고 ..

PS/코드트리

[코드트리] 마법의 숲 탐색 (python 정답 코드)

https://www.codetree.ai/training-field/frequent-problems/problems/magical-forest-exploration/ 코드트리 | 코딩테스트 준비를 위한 알고리즘 정석국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요.www.codetree.ai 코드트리에서 처음으로 봤던 문제다. (풀었다곤 안 함)처음에 이 문제를 코드트리에서 보고... 문제 이해부터 헤매는 스스로에게 현타 와서 백준으로 다시 돌아갔다.그리고 상어 시리즈를 마스터한 후 다시 돌아와서 풀었다. 이 문제를 쉽게 푸는 법 : 문제에서 알려준 정보를 전부 하드코딩하기 (ex. 좌표)+ 최종 행 계산할 때 괜히 이상한 방법 ..

PS/코드트리

[코드트리] 고대 문명 유적 탐사 (python 정답 코드)

https://www.codetree.ai/training-field/frequent-problems/problems/ancient-ruin-exploration/ 회전각도랑 3x3 회전만 잘 관리하면 엄청 어렵진 않다.. (쉽지도 않다)회전각도, 행, 열 우선순위도 잘 잡기.. import sysfrom collections import dequeinput = sys.stdin.readline# 유적지는 5×5# 유물 조각은 총 7가지 종류로, 각각 숫자 1부터 7로 표현됩니다.# 3×3 격자를 선택하여 격자를 회전# 선택된 격자는 시계 방향으로 90도, 180도, 270도 중 하나의 각도만큼 회전# [1] 3x3 격자 선택 # 회전 # (1) 유물 1차 획득 가치를 최대화하고, 그러한 방법..

PS/백준

[백준] 1913번 달팽이 (python 정답 코드)

https://www.acmicpc.net/problem/1913 달팽이 회전 원리가 헷갈리면 무조건 이 문제 푸는 걸 강추한다.나는 이 외에도 달팽이 회전 문제를 하도 많이 풀었더니 외워버렸다.. (feat. 상어 시리즈) import sysinput = sys.stdin.readlineN = int(input())Want = int(input())board = [[0] * N for _ in range(N)]di = [-1, 0, 1, 0]dj = [0, 1, 0, -1]ci, cj = N // 2, N // 2max_count, count, flag = 1, 0, 0dr = 0num = 1board[ci][cj] = 1while (ci, cj) != (0, 0): num += 1 coun..

PS/백준

[백준] 21610번 마법사 상어와 비바라기 (python 정답 코드)

https://www.acmicpc.net/problem/21610 from collections import dequeN, M = map(int, input().split())board = [list(map(int, input().split())) for _ in range(N)]movement = deque()for _ in range(M): d, s = map(int, input().split()) movement.append([d-1, s])# ←, ↖, ↑, ↗, →, ↘, ↓, ↙di = [0, -1, -1, -1, 0, 1, 1, 1]dj = [-1, -1, 0, 1, 1, 1, 0, -1]groom = [(N-1, 0), (N-1, 1), (N-2, 0), (N-2, 1)]vis..

PS/백준

[백준] 14890번 경사로 (python 정답 코드)

https://www.acmicpc.net/problem/14890 import sysinput = sys.stdin.readlineN, L = map(int, input().split())lines = [list(map(int, input().split())) for _ in range(N)] answer = 0def is_ok(line): visited = [False for _ in range(N)] for i in range(N-1): if line[i] == line[i+1]: continue if abs(line[i] - line[i+1]) >= 2: return False ..

PS/백준

[백준] 19236번 청소년 상어 (python 정답 코드)

https://www.acmicpc.net/problem/19236 import sys, collectionsfrom collections import dequeinput = sys.stdin.readlinedx = [-1, -1, 0, 1, 1, 1, 0, -1]dy = [0, -1, -1, -1, 0, 1, 1, 1]sea = [[[0]*2 for _ in range(4)] for _ in range(4)]for i in range(4): fish_lst = list(map(int, input().split())) for j in range(4): sea[i][j] = [fish_lst[j*2], fish_lst[j*2+1]-1]def find_fish(number, sea):..

PS/백준

[백준] 14891번 톱니바퀴 (python)

https://www.acmicpc.net/problem/14891 접근 방식문제를 보자마자 연쇄적으로 톱니바퀴가 돌아가니 DFS로 풀어야겠다고 생각했다.근데 이제 돌아가는 방향을 고려해야 했고, 자석의 극성도 확인해야 됐다.. 톱니바퀴가 무조건 연쇄적으로 돌아가는 게 아니기 때문에 고려해야 할 부분이 많았다. 그래서 회전 부분은 left, right 각각 메서드로 분리했다. DFS 부분 풀이는 다음과 같다.우선 한 번 체크한 톱니바퀴는 또 체크하면 안 되기 때문에 (두 번 돌아감) 방문처리를 해주었다. 그래프에서 제일 중요한 방문처리 !!!그러고 왼쪽에 있는 극성과 오른쪽에 있는 극성이 다른지 확인해 주었다. 어차피 톱니바퀴는 4개 있기 때문에 그 개수를 벗어나지 않는 선에서 분기처리 했다.이때 중요한..

yo0oni
'PS' 카테고리의 글 목록