본문 바로가기

Level25

[프로그래머스|파이썬] 큰 수 만들기 (탐욕법(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.
반응형