본문 바로가기

전체 글628

[프로그래머스] 음양 더하기 코딩테스트 연습 - 음양 더하기 어떤 정수들이 있습니다. 이 정수들의 절댓값을 차례대로 담은 정수 배열 absolutes와 이 정수들의 부호를 차례대로 담은 불리언 배열 signs가 매개변수로 주어집니다. 실제 정수들의 합을 구하여 re programmers.co.kr 내 풀이 def solution(absolutes, signs): answer = 0 for i in zip(absolutes, signs): if i[1]: answer += i[0] else: answer -= i[0] return answer 다른 방법 def solution(absolutes, signs): return sum(absolutes if sign else -absolutes for absolutes, sign in zi.. 2022. 4. 1.
[프로그래머스] 없는 숫자 더하기 코딩테스트 연습 - 없는 숫자 더하기 0부터 9까지의 숫자 중 일부가 들어있는 정수 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요. programmers.co.kr 내 풀이 def solution(numbers): answer=0 for i in range(1,10): if i not in numbers: answer += i return answer 다른 방법 solution = lambda x: sum(range(10)) - sum(x) 2022. 4. 1.
[프로그래머스] 크레인 인형뽑기 게임 코딩테스트 연습 - 크레인 인형뽑기 게임 [[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): answer = 0 stack = list() for i in moves: new_data = board[i - 1].pop() if new_data == 0: continue if stack and stack[-1] == new_data: answer += 2 del stack[-1] else: new_data = stack.append(new_data) return answer 다른 방법 def solu.. 2022. 4. 1.
[프로그래머스] 키패드 누르기 코딩테스트 연습 - 키패드 누르기 [1, 3, 4, 5, 8, 2, 1, 4, 5, 9, 5] "right" "LRLLLRLLRRL" [7, 0, 8, 2, 8, 3, 1, 5, 7, 6, 2] "left" "LRLLRRLLLRR" [1, 2, 3, 4, 5, 6, 7, 8, 9, 0] "right" "LLRLLRLLRL" programmers.co.kr 풀이 def solution(numbers, hand): answer = '' # 키패드 좌표료 변경 dic = {1: [0, 0], 2: [0, 1], 3: [0, 2], 4: [1, 0], 5: [1, 1], 6: [1, 2], 7: [2, 0], 8: [2, 1], 9: [2, 2], '*':[3, 0], 0: [3, 1], '#': [3, 2]}.. 2022. 4. 1.
[프로그래머스] 숫자 문자열과 영단어 코딩테스트 연습 - 숫자 문자열과 영단어 네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다. 다음은 숫자의 일부 자 programmers.co.kr 풀이 def solution(s): answer = s num_s = {'zero':0, 'one':1, 'two':2, 'three':3, 'four':4, 'five':5, 'six':6, 'seven':7, 'eight':8, 'nine':9} for item in num_s.items(): answer = answer.replace(item[0], str(item[1])) return int(answer) 다른 사람 풀이 num_dic = {".. 2022. 4. 1.
[프로그래머스] 로또의 최고순위와 최저순위 코딩테스트 연습 - 로또의 최고 순위와 최저 순위 로또 6/45(이하 '로또'로 표기)는 1부터 45까지의 숫자 중 6개를 찍어서 맞히는 대표적인 복권입니다. 아래는 로또의 순위를 정하는 방식입니다. 1 순위 당첨 내용 1 6개 번호가 모두 일치 2 5개 번호 programmers.co.kr 풀이 def solution(lottos, win_nums): answer = [] rank = [6, 6, 5, 4, 3, 2, 1] zero_count = lottos.count(0) count = 0 for i in lottos: if i in win_nums: count += 1 answer.append(rank[zero_count + count]) answer.append(rank[count]) return.. 2022. 4. 1.