CF2096A.Wonderful Sticks

入门

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

你是 nn 根木棒的骄傲拥有者。每根木棒的长度都是 11 到 nn 之间的整数,且所有木棒的长度互不相同。

你需要将这些木棒排成一行。有一个长度为 n−1n-1 的字符串 ss 描述了排列的要求:

具体来说,对于每个 ii(从 11 到 n−1n-1):

  • 如果 si=<s_i = \texttt{<},那么位置 i+1i+1 的木棒长度必须比它之前的所有木棒都短;
  • 如果 si=>s_i = \texttt{>},那么位置 i+1i+1 的木棒长度必须比它之前的所有木棒都长。

请找出任意一个满足条件的木棒排列。可以证明这样的排列总是存在。

输入格式

每个测试包含多个测试用例。第一行包含测试用例的数量 tt(1≤t≤5001 \le t \le 500)。接下来是各个测试用例的描述。

每个测试用例的第一行包含一个整数 nn(2≤n≤1002 \le n \le 100)——木棒的数量。

每个测试用例的第二行包含一个长度为 n−1n-1 的字符串 ss,由字符 <\texttt{<} 和 >\texttt{>} 组成——描述排列的要求。

输出格式

对于每个测试用例,输出 nn 个整数 a1,a2,…,ana_1, a_2, \ldots, a_n(1≤ai≤n1 \leq a_i \leq n,且 aia_i 互不相同)——按顺序排列的木棒长度。如果存在多个解,输出其中任意一个即可。

输入输出样例

  • 输入#1

    5
    2
    <
    5
    <<><
    2
    >
    3
    <>
    7
    ><>>><

    输出#1

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

说明/提示

对于第一个测试用例,排列的要求如下:

  • s1=<s_1 = \texttt{<},这意味着 a2a_2 必须比 a1a_1 短。

因此,一种可能的排列是 [2,1][2, 1]。

对于第二个测试用例,排列的要求如下:

  • s1=<s_1 = \texttt{<},这意味着 a2a_2 必须比 a1a_1 短;
  • s2=<s_2 = \texttt{<},这意味着 a3a_3 必须比 a1a_1 和 a2a_2 都短;
  • s3=>s_3 = \texttt{>},这意味着 a4a_4 必须比 a1a_1、a2a_2 和 a3a_3 都长;
  • s4=<s_4 = \texttt{<},这意味着 a5a_5 必须比 a1a_1、a2a_2、a3a_3 和 a4a_4 都短。

因此,一种可能的排列是 [4,3,2,5,1][4, 3, 2, 5, 1]。

翻译由 DeepSeek V3 完成

输入解题思路,AI测评打分。不知道怎么写?

首页