본문 바로가기
반응형

알고리즘130

[파이썬🐍] 프로그래머스 : 등굣길 def solution(m, n, puddles): dp = [[0] * (m + 1) for i in range(n + 1)] dp[1][1] = 1 #시작점 for i in range(1, n + 1): for j in range(1, m + 1): if i == 1 and j == 1: continue if [j,i] in puddles: dp[i][j] = 0 else: dp[i][j] = (dp[i - 1][j] + dp[i][j - 1]) return dp[n][m] % 1000000007 최단 거리이기 때문에 구하려는 좌표의 왼쪽과 위의 좌표만 가지고 더해주면 된다. 웅덩이는 0으로 넣어줘서 계산에 관여하지 않도록 한다. 2021. 7. 18.
[파이썬🐍] 프로그래머스 : 네트워크 def solution(n, computers): answer = 0 visited = [False for i in range(n)] for com in range(n): if visited[com] == False: DFS(n,computers,com,visited) answer += 1 return answer def DFS(n,computers,com,visited): visited[com] = True for connect in range(n): if connect != com and computers[com][connect] == 1: if visited[connect] == False: DFS(n,computers, connect, visited) def solution(n, computers.. 2021. 7. 17.
[파이썬🐍] 프로그래머스 : 숫자 문자열과 영단어 def solution(s): number = {"zero":"0","one":"1","two":"2","three":"3","four":"4","five":"5","six":"6","seven":"7","eight":"8","nine":"9"} for i in number: if i in s: s = s.replace(i, number[i]) return int(s) 2021. 7. 16.
[파이썬🐍] 프로그래머스 : 가장 먼 노드 from collections import deque def solution(n, edge): def bfs(): q = deque() q.append(1) while q: x = q.popleft() for i in a[x]: if ch[i] == 0: ch[i] = ch[x] + 1 q.append(i) a = [[] for i in range(n+1)] ch = [0]*(n+1) for i,j in edge: a[i].append(j) a[j].append(i) ch[1] = 1 bfs() return ch.count(max(ch)) 2021. 6. 30.
반응형