목록Algorithm (111)
S E P H ' S
코딩테스트 연습 - 네트워크 네트워크란 컴퓨터 상호 간에 정보를 교환할 수 있도록 연결된 형태를 의미합니다. 예를 들어, 컴퓨터 A와 컴퓨터 B가 직접적으로 연결되어있고, 컴퓨터 B와 컴퓨터 C가 직접적으로 연결되어 있 programmers.co.kr from collections import deque def solution(n, computers): answer = 0 visited = [False] * n for i in range(n): if not visited[i]: bfs(i, computers, visited) answer += 1 return answer def bfs(start, computers, visited): q = deque([start]) while q: cur = q.pop..
코딩테스트 연습 - 땅따먹기 땅따먹기 게임을 하려고 합니다. 땅따먹기 게임의 땅(land)은 총 N행 4열로 이루어져 있고, 모든 칸에는 점수가 쓰여 있습니다. 1행부터 땅을 밟으며 한 행씩 내려올 때, 각 행의 4칸 중 한 칸만 밟 programmers.co.kr 풀이 - 1행부터 시작하며, 현재 열의 발판에 이전 행의 최댓값을 더하면서 내려오는 방식으로 해결했다. - 정답은 마지막 행 중에서 가장 큰 값을 반환하면 된다. def solution(land): for i in range(1, len(land)): for j in range(len(land[0])): land[i][j] += max(land[i-1][:j] + land[i-1][j+1:]) return max(land[len(land)-1])
코딩테스트 연습 - 숫자의 표현 Finn은 요즘 수학공부에 빠져 있습니다. 수학 공부를 하던 Finn은 자연수 n을 연속한 자연수들로 표현 하는 방법이 여러개라는 사실을 알게 되었습니다. 예를들어 15는 다음과 같이 4가지로 표현 할 programmers.co.kr 풀이 def solution(n): answer = 0 for i in range(1, n+1): sum = 0 for j in range(i, n+1): sum += j if sum == n: answer += 1 break elif sum > n: break return answer def solution(n): return len([i for i in range(1, n+1, 2) if n % i == 0])
코딩테스트 연습 - 최댓값과 최솟값 문자열 s에는 공백으로 구분된 숫자들이 저장되어 있습니다. str에 나타나는 숫자 중 최소값과 최대값을 찾아 이를 "(최소값) (최대값)"형태의 문자열을 반환하는 함수, solution을 완성하세요. 예를 programmers.co.kr 풀이 def solution(s): arr = list(map(int, s.split())) arr.sort() return str(arr[0]) + " " + str(arr[-1])