[프로그래머스] 내적 문제 풀이
1. 문제
https://programmers.co.kr/learn/courses/30/lessons/70128
2. 풀이
def solution(a, b):
answer = 0
for i in range(len(a)):
answer += (a[i] * b[i])
return answer
[프로그래머스] 시저 암호 문제 풀이
1. 문제
https://programmers.co.kr/learn/courses/30/lessons/12926
2. 풀이
def solution(s, n):
answer = ''
for x in s:
if x.isalpha() == False:
answer += x
continue
if x.islower():
base = 'a'
else:
base = 'A'
answer += chr(ord(base) + ((ord(x) + n - ord...
[프로그래머스] 문자열 내림차순으로 배치하기 문제 풀이
1. 문제
https://programmers.co.kr/learn/courses/30/lessons/12917
2. 풀이
def solution(s):
K = list(s)
K.sort(reverse=True)
return "".join(K)
[프로그래머스] 땅따먹기 문제 풀이
1. 문제
https://programmers.co.kr/learn/courses/30/lessons/12913
2. 풀이
dp 를 이용해서 문제를 해결합니다. 현재 위치로 올 수 있는 경로까지의 값 중에서 가장 큰 값과 현재의 값을 더하는 식을 반복합니다.
def solution(land):
dp = [[0]*4 for i in range(len(land))]
for i, x in enumerate(land[0]):
dp[0][i] = land[0][i]
for i in range(1, len(land)):
dp[i][0] = max(dp[i -...
[프로그래머스] 야근 지수 문제 풀이
1. 문제
https://programmers.co.kr/learn/courses/30/lessons/12927
2. 풀이
힙을 사용해서 제일 큰 숫자부터 1씩 빼주는 작업을 수행합니다. 가장 큰 수가 1씩 감소하는 것이 다른 수가 1씩 감소하는 것보다 훨씬 더 값을 줄일 수 있습니다.
import heapq
def solution(n, works):
heap = []
for x in works:
heapq.heappush(heap, -x)
for i in range(n):
bigger = -heapq.heappop(heap)
...
[프로그래머스] 문자열을 정수로 바꾸기 문제 풀이
1. 문제
https://programmers.co.kr/learn/courses/30/lessons/12925
2. 풀이
def solution(s):
return int(s)
[프로그래머스] 수박수박수박수박수박수? 문제 풀이
1. 문제
https://programmers.co.kr/learn/courses/30/lessons/12922
2. 풀이
def solution(n):
return '수박' * (n//2) + ('' if n % 2 == 0 else '수')
[프로그래머스] 문자열 내 마음대로 정렬하기 문제 풀이
1. 문제
https://programmers.co.kr/learn/courses/30/lessons/12915
2. 풀이
먼저 사전순으로 문자열들을 정렬해줍니다. 이후 원하는 문자열의 위치에 따라 정렬을 수행합니다.
def solution(strings, n):
strings.sort()
strings.sort(key = lambda x : x[n])
return strings
[프로그래머스] 나누어 떨어지는 숫자 배열 문제 풀이
1. 문제
https://programmers.co.kr/learn/courses/30/lessons/12910
2. 풀이
def solution(arr, divisor):
answer = []
for x in arr:
if x % divisor == 0 :
answer.append(x)
answer.sort()
if len(answer) == 0 :
answer = [-1]
return answer
[프로그래머스] 입국심사 문제 풀이
1. 문제
https://programmers.co.kr/learn/courses/30/lessons/68935
2. 풀이
처음에 이 문제를 어떻게 풀어야 될지 매우 난감해서 다른 분들의 풀이를 참조하였습니다.
이진 탐색을 이용하면 쉽게 풀 수 있는 문제였습니다.
이진 탐색을 이용하여 최대 가능한 시간(최소검색시간을 가진 검색원의 검색 시간 * 사람수)과 0초를 기준으로 가능한 시간을 줄여갑니다.
각 탐색마다 middle 값의 시간동안 각 검색원들이 가능한 검색가능한 사람 수를 모두 더한 후 비교합니다. 가능하면 답으로 갱신, 가능하지 않으면 넘어가는 과정을 반복합니다....
794 post articles, 80 pages.