-
[프로그래머스] 프린터 - 파이썬(python)
✅ 나의 풀이 def solution(priorities, location): waiting = [(i,j) for i,j in enumerate(priorities)] complete = [] while waiting : if waiting[0][1] < max(waiting, key = lambda x:x[1])[1] : waiting.append(waiting[0]) waiting.pop(0) else : complete.append(waiting[0]) waiting.pop(0) for num, i in enumerate(complete) : if i[0] == location : return num+1 [ (0,2), (1,1) , (2,3) , (3,2) ] 와 같이 (처음 시작할 때의 인덱스..
알고리즘/스택,큐
2022. 9. 2.
-
[프로그래머스] 최대공약수와 최소공배수 - 파이썬(python)
나의 풀이 def solution(n, m): small = 1 big = n*m for i in range(1,min(n,m)+1) : if n%i == 0 and m%i == 0 : small = i for i in range(max(n,m),n*m, small) : if i%n == 0 and i%m == 0 : big = i break return([small,big]) 최대공약수 -> 1부터 min(n,m) 까지 돌면서 n,m 이 나눴을 때 둘다 나머지가 0인 숫자 최소공약수 -> max(n,m) 이상인 최대공약수의 배수를 확인하면서, n,m둘다 나머지를 0으로 나누는 숫자 다른 풀이 def gcd(a, b): return b if a % b == 0 else gcd(b, a % b) def l..
알고리즘/이것저것
2022. 9. 1.