프로그래머스(파이썬)/LV.0(파이썬)

    문자열밀기 - 리스트끼리 비교가능★ + rotate함수

    본인풀이 def solution(A, B): a=[] b=[] cnt=0 for i in A: a.append(i) for i in B: b.append(i) for i in range(len(a)): if a == b: return cnt else: a.insert(0, a.pop(-1)) cnt+=1 else: #for문을 끝까지 다 돌은 경우 return -1 rotate함수 사용하기 from collections import * def solution(A, B): cnt= 0 que=deque(A) for i in range(len(A)): if A == B: return cnt else: que.rotate(1) cnt+=1 else: return -1

    개미군단

    나의 풀이 def solution(hp): sum=0 jang = hp//5 hp = hp % 5 bang =hp//3 hp = hp % 3 il = hp//1 hp = hp % 1 sum = jang + bang + il return sum ▶ 5 보다 작은 hp를 5로 나눈 경우 몫은 0이다. 0은 더해도 아무런 지장이 없다. ▶ 3 보다 작은 hp를 3로 나눈 경우 몫은 0이다. 0은 더해도 아무런 지장이 없다. ▶1과 2의 경우 1로 또 나눌 필요가 없다. 그냥 더해주면 그것이 필요한 병력의 갯수이다. 모범답안 def solution(hp): first = hp // 5 second =((hp - first * 5) // 3) third = hp - first * 5 - second * 3 ret..

    진료 순서 정하기★

    def solution(emergency): answer = [] sort_num = sorted(emergency, reverse = True) for i in emergency: answer.append(sort_num.index(i) + 1) #print(answer) return answer ▶일단 임시변수 i가 emergency리스트의 요소에 차례대로 접근하되 ▶ emergency 요소에 해당하는 ▶ 정렬된 sorted_num의 인덱스+1은 진료의 등수를 나타낸다. ▶ emergency 리스트에 차례로 접근했기 때문에 등수값을 answer리스트에 append하면 ▶ emergency의 해당요소에 차례로 등수를 부여한 것이 된다

    외계행성의 나이 - chr, join 메서드

    나의 풀이 from string import ascii_lowercase alphabet_list = list(ascii_lowercase) print(alphabet_list) def solution(age): a=[] b='' for i in str(age): p=int(i) result=alphabet_list[p] a.append(result) for j in a: b= b +j return b 모범답안 def solution(age): return ''.join([chr(int(i)+97) for i in str(age)])