Skip to content

Instantly share code, notes, and snippets.

@morris821028
Created December 24, 2019 12:25
Show Gist options
  • Save morris821028/ed86ee13a0e1e417796672864bf78e30 to your computer and use it in GitHub Desktop.
Save morris821028/ed86ee13a0e1e417796672864bf78e30 to your computer and use it in GitHub Desktop.
記憶中的堆疊

題目描述

不斷地進行「思想實驗」的妮可,終於讓大腦演進到平行思考。假想在腦海裡,我們把狀態以堆疊 (Stack) 的方式儲存,當走投無路的時候,就會退回到上一個狀態,再把新的分支因素堆疊上去。正在全力計算的妮可無法細說每一個思維狀態,而我們可以操作戳記,反推出當前狀態。

操作有以下三種:

  • 0 v: 退回版本 v
  • 1 x: 在當前堆疊,push x 到堆頂
  • 2: 印出當前堆疊狀態

起始版本編號為 0,第 {% math %} i {% endmath %} 次操作版本編號為 {% math %} i {% endmath %}。

範例輸入

1 1
1 2
2
0 1
2
1 3
2
0 3
2

範例輸出

2 1 ]
1 ]
3 1 ]
2 1 ]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment