본문 바로가기

Problem Solving/프로그래머스79

[프로그래머스|파이썬] 큰 수 만들기 (탐욕법(Greedy)/lv.2) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/42883 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🐍파이썬 더보기 def solution(number, k): answer = '' idx = number.index(max(number[:k])) k -= idx number = number[idx:] #k개 중 가장 큰 수까지 앞부분 자르기 for i in range(1, len(number)-k): if k == 0: break if number[i] < number[i+1]: numbe.. 2023. 6. 1.
[프로그래머스|파이썬] 소수 찾기 (완전탐색/lv.2) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/42839 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🐍파이썬 from itertools import permutations def solution(numbers): answer = 0 numbers = list(numbers)#numbers를 한글자씩 리스트에 저장 aset = set() for i in range(1, len(numbers)+1): for j in permutations(numbers, i):#순열생성 aset.add(int.. 2023. 5. 29.
[프로그래머스|파이썬] 숫자 변환하기 (연습문제/lv.2) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/154538 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🐍파이썬 더보기 DFS def solution(x, y, n): def dfs(v, cur): global answer if cur == y: answer = v return if cur > y: return dfs(v+1, cur+n) dfs(v+1, cur*2) dfs(v+1, cur*3) global answer answer = 0 dfs(0, x) return answer - 1 재.. 2023. 5. 27.
[프로그래머스|파이썬] 2 x n 타일링 (연습문제/lv.2) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/12900 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🐍파이썬 더보기 ❌ 시간초과 실패 코드 from itertools import product def solution(n): total = n + n % 2 answer = 0 for i in range(2, total+1): for j in product([1, 2], repeat=i): if sum(j) == n: answer += 1 return answer 1과 2로 n을 만들 수 있는.. 2023. 5. 26.
[프로그래머스|파이썬] 2개 이하로 다른 비트(월간 코드 챌린지 시즌2/lv.2) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/77885 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🐍파이썬 더보기 ❌ 시간초과 실패 코드 def solution(numbers): answer = [] for i in numbers: num = bin(i)[2:] while True: i += 1 cnt = 0 num2 = bin(i) num = num.zfill(len(num2[2:])) for a, b in zip(num, num2[2:]): if a != b: cnt += 1 if c.. 2023. 5. 25.
[프로그래머스|파이썬] [1차] 프렌즈4블록 (2018 KAKAO BLIND RECRUITMENT/lv.2) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/17679 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🐍파이썬 더보기 def solution(m, n, board): for i in range(m): board[i] = list(board[i]) total = 0 while True: aset = set() for i in range(m-1): for j in range(n-1): if board[i][j] == '': continue if board[i][j] == board[i][j+1].. 2023. 5. 24.
[프로그래머스|파이썬] 모음사전 (완전탐색/lv.2) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/84512 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🐍파이썬 from itertools import product def solution(word): answer = [] for i in range(1, 6): for j in product(["A", "E", "I", "O", "U"], repeat = i): answer.append("".join(j)) answer.sort() return answer.index(word)+1 중복순열을 .. 2023. 5. 24.
[프로그래머스|파이썬] 방문 길이 (Summer/Winter Coding(~2018)/lv.2) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/49994 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🐍파이썬 더보기 def solution(dirs): answer = 0 board = [[0 for _ in range(10)] for _ in range(10)] dic = {"U":(0, -1), "D":(0, 1), "R":(1, 0), "L":(-1, 0)} x, y = 0, 0 xydic = {} for command in dirs: nx = x + dic[command][0] ny.. 2023. 5. 23.
[프로그래머스|파이썬] 바탕화면 정리 (연습문제/lv.1) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/161990 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🐍파이썬 def solution(wallpaper): lux, luy, rdx, rdy = 50, 50, 0, 0 for x in range(len(wallpaper)): for y in range(len(wallpaper[x])): if wallpaper[x][y] == "#": lux = min(lux, x)#매번 가장 작은 시작x점 갱신 luy = min(luy, y)#매번 가장 작은.. 2023. 5. 23.
[프로그래머스|파이썬] [3차] n진수 게임 (2018 KAKAO BLIND RECRUITMENT/lv.2) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/17687 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🐍파이썬 def trans(num, base): r = '' numbers = "0123456789ABCDEF" if num == 0: #num이 0인 경우는 while문 돌지 않으므로 따로 처리해줌 return "0" while num: r = numbers[num%base]+r #이전에 변환한 r이 맨 뒤로 가게 처리 num //= base return r def solution(n, t.. 2023. 5. 22.
[프로그래머스|파이썬] k진수에서 소수 개수 구하기 (2022 KAKAO BLIND RECRUITMENT/lv.2) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/92335 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🐍파이썬 import math def solution(n, k): cnt = 0 p = '' #k진수로 변경 while n > 0: p += str(n%k) n //= k #k진수 문자열을 0으로 나누기 p = p[::-1].split("0") for i in p: if i =="": #"00"과 같이 0이 여러번 반복될 경우 빈문자열 continue #빈문자열 skip i = int(i) .. 2023. 5. 22.
[프로그래머스|파이썬] 뒤에 있는 큰 수 찾기 (연습문제/lv.2) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/154539 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🐍파이썬 더보기 ❌ 실패 코드 def solution(numbers): answer = [] for i in range(len(numbers)): for j in range(i+1, len(numbers)): if numbers[i] < numbers[j]: answer.append(numbers[j]) break else: answer.append(-1) return answer 이중 f.. 2023. 5. 22.
반응형