#arc111d. [arc111_d]Orientation

[arc111_d]Orientation

题目描述

给定一个简单的无向图,其中有 NN 个顶点和 MM 条边。顶点编号为 1,cdots,N1, \\cdots, N,第 ii 条边连接了顶点 aia_ibib_i。同时给定一个正整数序列:c1,c2,cdots,cNc_1, c_2, \\cdots, c_N

将这个图转换为一个满足以下条件的有向图,即对于每个 ii,删除无向边 (ai,bi)(a_i, b_i),并添加两条有向边之一 aitobia_i \\to b_ibitoaib_i \\to a_i

  • 对于每个 i=1,2,cdots,Ni = 1, 2, \\cdots, N,从顶点 ii 可以到达恰好 cic_i 个顶点(通过遍历一些有向边),包括顶点 ii 本身。

在此问题中,保证给定的输入始终有一个解

约束条件

  • 1leqNleq1001 \\leq N \\leq 100
  • 0leqMleqfracN(N1)20 \\leq M \\leq \\frac{N(N - 1)}{2}
  • 1leqai,bileqN1 \\leq a_i, b_i \\leq N
  • 给定图中没有自环和重复边。
  • 1leqcileqN1 \\leq c_i \\leq N
  • 总是存在一个有效解

输入

输入以以下格式从标准输入给出:

NN MM a1a_1 b1b_1 :: aMa_M bMb_M c1c_1 c2c_2 ...... cNc_N

输出

输出 MM 行。

要在第 ii 条边上添加边 aitobia_i \\to b_i,在第 ii 行中打印 ->;要在第 ii 条边上添加边 bitoaib_i \\to a_i,在第 ii 行中打印 <-

如果存在多个解,任何一个都将被接受。


示例输入 1

3 3
1 2
2 3
3 1
3 3 3

示例输出 1

->
->
->

在长度为 33 的循环中,您可以从任一顶点到达每个顶点。


示例输入 2

3 2
1 2
2 3
1 2 3

示例输出 2

<-
<-

示例输入 3

6 3
1 2
4 3
5 6
1 2 1 2 2 1

示例输出 3

<-
->
->

图可能是不连通的。