#ATagc053a. [AGC053A] >< again

[AGC053A] >< again

题目描述

有一个长度为 NN 的字符串 SSSS 的每个字符都是 <>

如果一个元素个数为 N+1N+1 的非负整数序列 X0,X1,,XNX_0,X_1,\ldots,X_N 满足对于所有 1iN1 \leq i \leq N,都有以下条件,则称其为良好的非负整数序列

  • SiS_i< 时:Xi1<XiX_{i-1} < X_i
  • SiS_i> 时:Xi1>XiX_{i-1} > X_i

现在给定一个良好的非负整数序列 AA,请将其分解为尽可能多的良好的非负整数序列。也就是说,求一个正整数 kk 以及 kk 个良好的非负整数序列 B1,B2,,BkB_1,B_2,\ldots,B_k,使得满足以下条件的 kk 最大,并输出其中一种方案:

  • 对于所有 0iN0 \leq i \leq NB1,,BkB_1,\ldots,B_k 的第 ii 项的和等于 AiA_i

输入格式

输入以如下格式从标准输入读入:

NN SS A0A_0 A1A_1 \cdots ANA_N

输出格式

请按如下格式输出到标准输出:

kk B1,0B_{1,0} B1,1B_{1,1} \cdots B1,NB_{1,N} :: B2,0B_{2,0} B2,1B_{2,1} \cdots B2,NB_{2,N} :: \cdots :: Bk,0B_{k,0} Bk,1B_{k,1} \cdots Bk,NB_{k,N}

其中,Bi,jB_{i,j} 表示第 ii 个良好的非负整数序列 BiB_i 的第 jj 项的值。

样例 1

输入

3
<><
3 8 6 10

输出

2
1 5 4 7
2 3 2 3

说明/提示

限制条件

  • 1N1001 \leq N \leq 100
  • 0Ai1040 \leq A_i \leq 10^4
  • SS 是仅由 <> 组成的长度为 NN 的字符串。
  • AA 是一个良好的非负整数序列,特别地,其元素个数为 N+1N+1

由 ChatGPT 4.1 翻译