티스토리 뷰
반응형
문제
5430번: AC
문제 선영이는 주말에 할 일이 없어서 새로운 언어 AC를 만들었다. AC는 정수 배열에 연산을 하기 위해 만든 언어이다. 이 언어에는 두 가지 함수 R(뒤집기)과 D(버리기)가 있다. 함수 R은 배열에 있
www.acmicpc.net
풀이
나를 너무너무 힘들게했던.... 실버2에 덱문제라고 너무 만만하게 봤는지
런타임에러, 시간초과, 틀렸습니다를 모두 겪고나서야 겨우 맞았다.
먼저
1. R이 들어올때마다 reverse를 하면 절대 안된다 -> 무조건 터짐
따라서 reverse flag을 두고 R이 들어올때마다 1->0 0->1으로 바꿔준 후, 마지막에 reverse flag이 1이면 출력하기 전에 한번 뒤집어줬다.
2. 출력형식이 [1, 2, 3]이 아니라 [1,2,3] 이다. 여백없음! 보통 이러면 출력형식이 잘못됐다고 나오던데 그냥 틀렸다고 나와서 한참 찾았다.
3.
1
RR
0
[]
이걸로 돌려보고 알았다. 나는 처음에 큐의 마지막 원소가 출력될때 ']'를 붙이는 방법으로 짜서
큐에 아무 원소가 없을때는 '[' 혼자 출력되는 문제가 있었다.
큐를 출력하는것과 별개로 처음과 끝에 '['얘랑 ']'얘를 추가해줘서 결국 성공!
이 외의 문제가 있다면 여기를 꼼꼼하게 읽어보고 다시 풀어보는 것을 추천한다.
글 읽기 - ★☆★☆★ [필독] AC FAQ ★☆★☆★
댓글을 작성하려면 로그인해야 합니다.
www.acmicpc.net
import sys
from collections import deque
TC = int(sys.stdin.readline())
for _ in range(TC):
cmd = sys.stdin.readline().strip()
size = int(sys.stdin.readline())
# 덱에 입력받아서 넣기
line = sys.stdin.readline()[1:-2].split(",")
queue = deque()
for each in line:
if each != '':
queue.append(each)
errorflag = 0
reverse = 0
# 명령어 하나씩
for each in cmd:
if each == "R": # reverse(flag) 바꿔주기
if reverse == 0:
reverse = 1
else:
reverse = 0
else: # D면 reverse(flag)방향에 따라 앞이나 뒤에서 하나씩 삭제
if queue and queue[0] != '':
if reverse == 0:
queue.popleft()
else:
queue.pop()
else:
errorflag = 1
break
if errorflag == 1: # 에러플래그 1이면 에러 출력
print("error")
else:
if reverse == 1: # 리버스 플래그 1이면 뒤집어서 출력
queue.reverse()
print("[", end='')
for i in range(len(queue)):
if i == len(queue)-1:
print(str(queue[i]),end='')
else:
print(queue[i],end=',')
print("]")
반응형
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 안드로이드 카카오톡으로 로그인
- 전화번호목록 파이썬
- 데이터바인딩 뷰바인딩 차이
- kotlin fragment
- 파이썬 최대공약수
- 프로그래머스
- 카카오 기출
- 백준 2003
- Kotlin
- 투포인터 알고리즘
- 카카오 키해시
- 코틀린 데이터바인딩
- TextFormField keyboard
- 코틀린 바텀네비게이션
- 코틀린 리스트뷰
- flutter simultor
- 시뮬레이터 키보드
- 코틀린 뷰페이저
- 백준 1806
- 소수 구하기 파이썬
- 카카오톡으로 로그인 오류
- 안드로이드
- 코틀린 뷰바인딩
- 백준
- 투포인터 알고리즘 파이썬
- counting sort
- 백준알고리즘
- 안드로이드 키해시
- 백준 1644
- 코틀린
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함