Notice
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 클라우드 컴퓨팅
- 로드밸런서
- 월미도
- 쿠버네티스
- 백트래킹
- Apache Kafka
- 카프카
- Elasticsearch
- JPA
- Spring Boot
- VPC
- 클라우드
- 스프링
- 오일러프로젝트
- Docker
- 인천여행
- springboot
- DFS
- Spring
- Kafka
- 백준
- 코드업
- 프로그래밍문제
- 알고리즘
- 스프링부트
- aws
- gcp
- 스프링 부트
- Spring Data JPA
- 자료구조
Archives
- Today
- Total
GW LABS
[Backjoon] 회전하는 큐 본문
백준 1021번 회전하는 큐 문제는 큐를 이용해서 큐를 회전시키면서 주어진 숫자들을 뽑아내는데 최소 회전 회수를 구하는 문제이다. 쉬운 문제였는데 많은 시간을 소비해 버렸다. 문제 풀이에 있어서 컨디션도 영향을 미치는 것 같다. 또한 알고리즘 문제 풀이에 있어서는 최대한 문제 자체에 집중하기 위해서 필요한 코드만 작정하는 습관을 들여야겠다. 의사코드를 먼저 작성하면 항상 도움이 된다.
from collections import deque
q_size, pop_count = list(map(int, input().split(" ")))
pop_target = list(map(int, input().split(" ")))
q = deque([i for i in range(1, q_size+1)])
answer = 0
for target in pop_target:
target_position = q.index(target)
q_half = len(q) // 2
if target_position > q_half:
trigger = 1
else:
trigger = -1
while q[0] != target:
q.rotate(trigger)
answer += 1
q.popleft()
print(answer)
'Algorithm & DataStructure' 카테고리의 다른 글
[Backjoon] 소수&팰린드롬 (0) | 2021.01.12 |
---|---|
[Backjoon] 트럭 주차 (0) | 2021.01.02 |
[Backjoon] 통나무 건너뛰기 (0) | 2020.12.13 |
[Backjoon] 톱니바퀴 (0) | 2020.12.10 |
[Backjoon] 저울 (0) | 2020.12.07 |
Comments