본문 바로가기
반응형

Problem Solving/프로그래머스17

[프로그래머스 programmers] 같은 숫자는 싫어 programmers.co.kr/learn/courses/30/lessons/12906 코딩테스트 연습 - 같은 숫자는 싫어 배열 arr가 주어집니다. 배열 arr의 각 원소는 숫자 0부터 9까지로 이루어져 있습니다. 이때, 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하려고 합니다. 단, 제거된 후 남은 programmers.co.kr 난이도: lv1 간단한 문제지만 다른 문제에 활용될 수 있을 듯하다. 답 리스트가 비어있거나, 마지막 요소와 다를 때 값을 넣어준다. def solution(arr): answer = [] for char in arr: if not answer or answer[-1]!=char: answer.append(char) return answer 다른 사.. 2021. 4. 26.
[프로그래머스 programmers] 크레인 인형뽑기 게임 programmers.co.kr/learn/courses/30/lessons/64061?language=python3 코딩테스트 연습 - 크레인 인형뽑기 게임 [[0,0,0,0,0],[0,0,1,0,3],[0,2,5,0,1],[4,2,4,4,2],[3,5,1,3,1]] [1,5,3,5,1,2,1,4] 4 programmers.co.kr def solution(board, moves): stack = [] for move in moves: place = move-1 catch = 0 for i in range(len(board)): if board[i][place]!=0: catch = board[i][place] board[i][place]=0 break if catch !=0: stack.append(.. 2021. 4. 25.
kakao 2020 코딩테스트 기출문제 - 문자열 압축 programmers.co.kr/learn/courses/30/lessons/60057 코딩테스트 연습 - 문자열 압축 데이터 처리 전문가가 되고 싶은 "어피치"는 문자열을 압축하는 방법에 대해 공부를 하고 있습니다. 최근에 대량의 데이터 처리를 위한 간단한 비손실 압축 방법에 대해 공부를 하고 있는데, 문 programmers.co.kr 풀긴 했지만 꽤 오래걸려서 실전이었으면 못 풀었을 것 같다... def solution(s): result = [] for unit in range(1, len(s) + 1): # unit(int) means the length of unit length = 0 word = '' show = 0 start = 0 for _ in range(len(s)//unit): p.. 2021. 4. 22.
[프로그래머스 programmers] 네트워크 문제풀이 programmers.co.kr/learn/courses/30/lessons/43162 코딩테스트 연습 - 네트워크 네트워크란 컴퓨터 상호 간에 정보를 교환할 수 있도록 연결된 형태를 의미합니다. 예를 들어, 컴퓨터 A와 컴퓨터 B가 직접적으로 연결되어있고, 컴퓨터 B와 컴퓨터 C가 직접적으로 연결되어 있 programmers.co.kr dfs문제이므로 dfs로 접근하였다. 순차적으로 탐색하되 이미 탐색을 완료한 곳이면 즉시 탐색을 중단하고, 탐색하지 않은 곳이면 탐색 목록에 추가시키며 끝까지 탐색한다. 이후 solution 함수에서 탐색 목록에 없었던 곳을 탐색하였다면 그때마다 answer에 1을 더해준다. answer = 0 def solution(n, computers): global answer .. 2021. 4. 16.
[프로그래머스 programmers] 타겟 넘버 문제풀이 programmers.co.kr/learn/courses/30/lessons/43165 코딩테스트 연습 - 타겟 넘버 n개의 음이 아닌 정수가 있습니다. 이 수를 적절히 더하거나 빼서 타겟 넘버를 만들려고 합니다. 예를 들어 [1, 1, 1, 1, 1]로 숫자 3을 만들려면 다음 다섯 방법을 쓸 수 있습니다. -1+1+1+1+1 = 3 +1-1+1+1+ programmers.co.kr dfs 문제이므로 dfs로 접근하였다. 부호는 어차피 +또는 -이기때문에 두가지 경우에 대하여 깊이탐색을 실시하고 말단 노드까지 탐색한 뒤 sum이 target과 같다면 경우의 수를 추가하는 방식. def solution(numbers, target): def dfs(sum, idx): if idx == len(number.. 2021. 4. 16.
반응형