白駿18258-Q 2


提问链接


Code

from collections import deque
import sys
read = sys.stdin.readline

q = deque()
for _ in range(int(read())):
    op = read().split()
    if "push" == op[0]:
        q.append(int(op[-1]))
    elif "pop" == op[0]:
        print(q.popleft() if q else -1)
    elif "size" == op[0]:
        print(len(q))
    elif "empty" == op[0]:
        print(0 if q else 1)
    elif "front" == op[0]:
        print(q[0] if q else -1)
    elif "back" == op[0]:
        print(q[-1] if q else -1)

困難事項

  • sys.stdin.readlineを使用しないとタイムアウトが発生します.
  • ですがsysです.stdin.readlineを使用すると、文の最後にスペースが同時に入力されるため、この部分を処理する必要があります.
  • を最初にコミットするとrstrip()が行われたにもかかわらずエラーが発生しました.
  • なのでsplitに処理され、問題がうまく解決されました.
  • 時間秒の制限は3秒なので、普通のリストを書くのに時間がかかるかもしれません.だからdequeをインポートして使用します.