#CSES2425. 堆叠硬币

堆叠硬币

题目背景

翻译自 CSES-2425 题。

题目描述

你有 nn 个硬币,每个硬币的重量不同。

有两个堆栈,初始时它们都是空的。在每一步,你将一个硬币移到一个堆栈中。你从不移除堆栈中的硬币。

在每次操作后,你的任务是确定哪个堆栈更重(如果能够确定某个堆栈更重的话)。

输入格式

第一行包含一个整数 nn,表示硬币的数量。硬币编号为 1,2,,n1, 2, \dots, n。你知道第 ii 个硬币的重量总是比第 i1i-1 个硬币重,但你不知道它们的确切重量。

接下来有 nn 行,每行包含两个整数 ccss,表示将硬币 cc 移到堆栈 sss=1s=1 表示左堆栈,s=2s=2 表示右堆栈)。

输出格式

对于每次操作,输出:

  • 如果右堆栈更重,输出 <
  • 如果左堆栈更重,输出 >
  • 如果无法确定哪个堆栈更重,输出 ?

样例

3
2 1
3 2
1 1
>
<
?

样例1解释

在最后一次操作后,如果硬币的分布是 [2,3,4][2, 3, 4],则左堆栈更重,但如果硬币的分布是 [1,2,5][1, 2, 5],则右堆栈更重。

说明/提示

1n2×1051 \leq n \leq 2 \times 10^5