2019.02.28) 백준 큐 특집 - 2161, 1966, 2164(시간초과?) (PyPy3)
2019. 2. 28. 18:00ㆍ프로그래밍(주력)/백준 문제풀이
큐는 스택이랑 반대쪽인 제일 앞만 건드릴수 있는 자료구조이다.
2161번
1 2 3 4 5 6 7 8 | q = [i + 1 for i in range(int(input()))] while len(q) != 1: print(q.pop(0), end=' ') q.append(q.pop(0)) print(q[0]) | cs |
1966번
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | for i in range(int(input())): a, b = map(int, input().split(' ')) # 프린터 큐 q = [i for i in range(a)] # 랭킹 큐 r = list(map(int, input().split(' '))) n = 0 while True: # 랭킹이 높은놈일때 if max(r) == r[0]: # 프린터 카운트 올라가고 n += 1 # 랭킹을 없애고 r.pop(0) # 프린터가 입력값이랑 같으면 출력 if b == q.pop(0): print(n) break # 랭킹이 높지 않을때 else: # 둘 다 뒤로 넘김 r.append(r.pop(0)) q.append(q.pop(0)) | cs |
2164번(그냥 파이썬이라 시간초과인듯..?)
1 2 3 4 5 6 7 8 9 | q = [i + 1 for i in range(int(input()))] while len(q) != 1: q.pop(0) q.append(q.pop(0)) print(q[0]) | cs |
'프로그래밍(주력) > 백준 문제풀이' 카테고리의 다른 글
2019.03.02) 백준 dfs 특집 2편 - 14888, 2800(PyPy3) (0) | 2019.03.02 |
---|---|
2019.03.01) 백준 dfs 특집 1편 - 1182, 6603(PyPy3) (0) | 2019.03.01 |
2019.02.27) 백준 스택 특집 - 10848, 9012, 10799 (PyPy3) (0) | 2019.02.27 |
2019.02.26) 백준 11053번 풀이 (PyPy3) (0) | 2019.02.26 |
2019.02.25) 백준 11057번, 2193번 풀이 (PyPy3) (0) | 2019.02.25 |