공부/📝 프로그래머스(126)
-
유한소수 판별하기 - Python
def solution(a, b): divisor = 2 while divisor
2023.09.30 -
치킨 쿠폰 - Python
def solution(chicken): answer = chicken // 10 inventory = [chicken % 10, chicken // 10] while sum(inventory) >= 10: if inventory[0] >= 10: inventory[0] -= 10 inventory[1] += 1 answer += 1 elif inventory[1] >= 10: inventory[1] -= 10 inventory[0] += 1 answer += 1 elif sum(inventory) >= 10: inventory = [0, 1] answer += 1 return answer # Test Cases print(solution(100)) print("="*50) print(solution(1..
2023.09.30 -
등수 매기기 - Python
def solution(score): answer = [] avg_score = [] [avg_score.append(sum(item)/2) for item in score] rank = sorted(avg_score, reverse=True) [answer.append(rank.index(item) + 1) for item in avg_score] return answer # Test Cases print(solution([[80, 70], [90, 50], [40, 70], [50, 80]])) print("="*50) print(solution([[80, 70], [70, 80], [30, 50], [ 90, 100], [100, 90], [100, 100], [10, 30]])) print("="..
2023.09.30 -
로그인 성공? - Python
def solution(id_pw, db): for item in db: if item[0] == id_pw[0]: if item[1] == id_pw[1]: return "login" else: return "wrong pw" return "fail" # Test Cases print(solution(["meosseugi", "1234"], [["rardss", "123"], ["yyoom", "1234"], ["meosseugi", "1234"]])) print("="*50) print(solution(["programmer01", "15789"], [["programmer02", "111111"], [ "programmer00", "134"], ["programmer01", "1145"]])) pr..
2023.09.30 -
캐릭터의 좌표 - Python
def solution(keyinput, board): answer = [0, 0] margin_x = (board[0] - 1) // 2 margin_y = (board[1] - 1) // 2 for key in keyinput: if key == "up": if answer[1] == margin_y: pass else: answer[1] += 1 elif key == "down": if answer[1] == -margin_y: pass else: answer[1] -= 1 elif key == "left": if answer[0] == -margin_x: pass else: answer[0] -= 1 elif key == "right": if answer[0] == margin_x: pass el..
2023.09.30 -
외계어 사전 - Python
def solution(spell, dic): spell.sort() check_voca = "".join(spell) for item in dic: item = "".join(sorted(list(item))) if item == check_voca: return 1 return 2 # Test Cases print(solution(["p", "o", "s"], ["sod", "eocd", "qixm", "adio", "soo"])) print("="*50) print(solution(["z", "d", "x"], ["def", "dww", "dzx", "loveaw"])) print("="*50) print(solution(["s", "o", "m", "d"], ["moos", "dzx", "smm"..
2023.09.30 -
문자열 계산하기 - Python
def solution(my_string): return eval(my_string.replace(" ", "")) # Test Cases print(solution("3 + 4")) 쉽게 했습니다. solution = eval 사실 이렇게까지 할 수 있었는데 생각이 모자랐네요. def solution(my_string): return sum(int(i) for i in my_string.replace(' - ', ' + -').split(' + ')) 정말 창의적인 풀이입니다. 많이 배웁니다. 프로그래머스: https://school.programmers.co.kr/learn/courses/30/lessons/120902 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 ..
2023.09.30