[프로그래머스] Level2, 점프와 순간 이동 (Python)
·
알고리즘/프로그래머스
문제 https://programmers.co.kr/learn/courses/30/lessons/12980 코딩테스트 연습 - 점프와 순간 이동 OO 연구소는 한 번에 K 칸을 앞으로 점프하거나, (현재까지 온 거리) x 2 에 해당하는 위치로 순간이동을 할 수 있는 특수한 기능을 가진 아이언 슈트를 개발하여 판매하고 있습니다. 이 아이언 슈 programmers.co.kr 코드 def solution(n): ans = 0 while n!=0: if n % 2 != 0: n -= 1 ans += 1 else: n //= 2 return ans n부터 0까지 계산을 해보면 몇번 건전지를 사용했는지 구할 수 있다. n이 2로 나누었을때 나머지가 0인 경우에만 2로 나눠주고 나머지는 -1을 해주고 건전지를 사..
[프로그래머스] Level2, 삼각 달팽이 (Python)
·
알고리즘/프로그래머스
문제 https://programmers.co.kr/learn/courses/30/lessons/68645 코딩테스트 연습 - 삼각 달팽이 5 [1,2,12,3,13,11,4,14,15,10,5,6,7,8,9] 6 [1,2,15,3,16,14,4,17,21,13,5,18,19,20,12,6,7,8,9,10,11] programmers.co.kr 코드 def solution(n): answer = [[0 for j in range(i+1)] for i in range(n)] result = [] x,y = -1, 0 num = 1 for i in range(n): for j in range(i, n): #down if i % 3 == 0: x += 1 #right elif i % 3 == 1: y += 1..
[프로그래머스] Level2, 이진 변환 반복하기 (Python)
·
알고리즘/프로그래머스
문제 https://programmers.co.kr/learn/courses/30/lessons/70129 코딩테스트 연습 - 이진 변환 반복하기 programmers.co.kr 코드 def solution(s): answer = [] result = "" count = 0 while_count = 0 while s != "1": list_s = list(s) s = format(list_s.count("1"), 'b') count += list_s.count("0") while_count += 1 return [while_count, count] 맨처음에는 while문 안에 for문을 돌면서 s 문자열 한개한개 확인해 "1"일 경우 따른 문자열에 추가하고 이런식으로 접근하였는데 당연히 시간초과가 나게 ..
[프로그래머스] Level2, 영어 끝말잇기 (Python)
·
알고리즘/프로그래머스
문제 https://programmers.co.kr/learn/courses/30/lessons/12981 코딩테스트 연습 - 영어 끝말잇기 3 ["tank", "kick", "know", "wheel", "land", "dream", "mother", "robot", "tank"] [3,3] 5 ["hello", "observe", "effect", "take", "either", "recognize", "encourage", "ensure", "establish", "hang", "gather", "refer", "reference", "estimate", "executive"] [0,0] programmers.co.kr 코드 def solution(n, words): answer = [] temp ..