🚩 자료구조, 문자열, 해시를 이용한 집합과 맵 1. 시간초과 (fail) 문제보자마자 바로 enumerate으로 index랑 value 출력했는데 시간초과가 났다. N, M = map(int, input().split()) lst = [input() for _ in range(N)] quest = [input() for _ in range(M)] for j in range(M): for i, v in enumerate(lst): # print(i, type(i), v, type(v)) # 0 Bulbasaur if quest[j] == v: print(i+1) if quest[j] == str(i+1): print(v) 혹시몰라 sys.stdin.readline() 도 추가해줬는데 이건 의미가 없었다...
🚩 그래프이론, 그래프탐색, BFS thinking 문제를 읽어보니 BFS여서 BFS로 풀었다. 인접리스트를 만들어준 후, 1번부터 순회하면서 케빈베이컨수를 카운팅한 후 리스트에 넣고 그 리스트에서 가장 작은 값의 인덱스를 출력했다. 코드 from collections import deque def BFS(i): visited = [0] * (N+1) queue.append(i) visited[i] = 1 while queue: t = queue.popleft() for v in edge_list[t]: if not visited[v]: visited[v] = visited[t]+1 queue.append(v) return sum(visited) N, M = map(int, input().split())..
🚩 그래프이론, 그래프탐색, DFS, BFS thinking 처음에 인접리스트로 풀었는데 인풋값을 뭘 먼저 받느냐에 따라 dfs에서 순서가 달라져서 인접행렬로 풀었다. (같은 거리의 노드라면 숫자가 작은 순으로 진행되야 하기 때문) dfs는 재귀여서 그냥 바로바로 출력하고자 함수 내에 print처리했고, bfs는 queue를 이용해서 풀었다. 코드 def DFS(V): visited[V] = 1 # 방문체크 print(V, end=' ') # 재귀여서 바로 출력 for v in range(1, N+1): if not visited[v] and edge_matrix[V][v] == 1: DFS(v) def BFS(V): queue = [V] # 출발점 visited = [V] # 방문 while queue..
🚩 그래프이론, 그래프탐색, DFS, BFS thinking 상하좌우 다 탐색하면서 방문탐색하고 값이 1이면(==배추면) 카운팅 1 증가 ⭐ 처음에 그냥 풀었더니 런타임에러가 났다. 구글링 했더니 재귀 limit을 설정해주지 않아서 발생한 문제라고 한다. K(1 ≤ K ≤ 2500)의 범위가 엄청 커서 그런듯? 파이썬의 기본 재귀 한도가 (1000)이어서 재귀 깊이가 1000을 넘어갈 경우 모듈을 추가해줘야한다. 파이썬 최대 재귀 깊이 늘리는 모듈 import sys sys.setrecursionlimit(탐색하고자하는 깊이) 코드 import sys sys.setrecursionlimit(10000) def dfs(r,c): dr = [0, 1, 0, -1] dc = [1, 0, -1, 0] a[r][..
🚩 동적프로그래밍(DP) thinking 1. 시간초과 난 코드 피보나치 수열 코드와 동일하게 짜되, n == 0 or 1 인 경우 0과 1의 호출횟수를 카운트하도록 함수를 구성했다. output은 맞게 나왔지만 시간초과 뜸 2. success 😀 0호출횟수와 1호출횟수를 리스트로 만들어 피보나치 수열처럼 n-1, n-2의 호출횟수를 더하는 방식으로 코드를 짬. n = 8 인 경우, cnt_0 = [1, 0, 1, 1, 2, 3, 5, 8], cnt_1 = [0, 1, 1, 2, 3, 5, 8, 13]가 되어 n번째 원소를 출력하면 된다 코드 (pass) T = int(input()) for tc in range(T): N = int(input()) cnt_0 = [1, 0] # 0 호출횟수 기록하는 리..
- Python
- 21609 상어 중학교
- 기지국설치
- 보석쇼핑
- swea
- 20056 마법사 상어와 파이어볼
- 브루트포스
- 17406 배열돌리기4
- 삼성기출
- 알고리즘
- 백준
- BFS
- git 미러링
- dp
- dfs
- 2579 계단오르기
- 파이썬
- react
- 20057 마법사 상어와 토네이도
- 프로그래머스
- 영어끝말잇기
- 삼성코테
- 2018 카카오 공채
- merge 에러
- merge에러
- Total
- Today
- Yesterday