1021번 2

[백준, 파이썬, 1021번] 회전하는 큐

풀이 뭔가 애를 먹었던 부분이 else의 if 문에서 인덱스와 dq.size()/2 부분에서 정수 나누기 정수의 경우엔 정수로 되는 부분으로 한참 고생을 했다. 마지막으로 문제에서 2번,3번 연산의 최솟값을 출력하라고 해서 둘 중 작은 값으로 출력해야하는 줄 알고도 조금 ... ㅎ import sys from collections import deque input = sys.stdin.readline cnt = 0 n,m = map(int,input().split()) dq = deque(range(1,n+1)) for i in list(map(int,input().split())): while True: if i == dq[0]: dq.popleft() break else: if dq.index(i)

알고리즘 2023.12.19

[백준, 자바, 1021번] 회전하는 큐

풀이 풀면 풀 수록 자바보단 파이썬이 너무 편하다는 걸 느끼게 된다... 우선 자바에서 deque를 사용할 때엔 Deque를 사용하면서 안의 배열은 자유롭게 사용하지만 보통은 ArrayDeque나 LinkedList를 사용한다고 하는 것 같다. 그리고 다른 것은 뭐 그냥 간단한 것이기에 해결이 쉽지만 뭔가 애를 먹었던 부분이 else의 if 문에서 인덱스와 dq.size()/2 부분에서 정수 나누기 정수의 경우엔 정수로 되는 부분으로 한참 고생을 했다. 그리고 파이썬에서는 간단하게 인덱스를 찾을 수 있었지만 잘 몰라서 그런지 할 수 없다는 것을 알게 되어 따로 메서드를 정의하여 해결 마지막으로 문제에서 2번,3번 연산의 최솟값을 출력하라고 해서 둘 중 작은 값으로 출력해야하는 줄 알고도 조금 ... ㅎ ..

알고리즘 2023.12.19