목록2025/02/12 (2)
동캄의 코딩도장
예전에 풀었었는데 다시 풀어보았다. 예전 코드n,k=map(int,input().split())index=0lst=[]ans=[]for i in range(n): lst.append(i+1)i=0while(len(lst)>1): i=(i+k-1)%len(lst) ans.append(lst.pop((i)%len(lst)))ans.append(lst[0])print('') 지금코드from collections import dequeN,K= map(int,input().split())lst=[i for i in range(1,N+1)]ans=[]q=deque(lst)while q: q.rotate(-(K-1)) ans.append(q[0]) q.popleft()print('')..
https://www.acmicpc.net/problem/3273 간단한 그리디 문제이다. #백준 3273 두 수의 합import sysn=int(sys.stdin.readline())lst=list(map(int,sys.stdin.readline().split()))lst.sort()x=int(sys.stdin.readline())i=0j=len(lst)-1ans=0while (ix: j-=1 else: i+=1 ans+=1print(ans)정렬 후, 앞 뒤에서 동시에 진행하며 계산하면 된다. 앞 수 + 뒷 수 > X 이면뒷 수의 인덱스를 하나 줄인다. 앞 수 + 뒷 수 앞 수의 인덱스를 하나 늘린다. 앞 수 + 뒷 수 == X 이면앞 수의 인덱스를 하나 늘리..