CF2096A.Wonderful Sticks
入门
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
你是 n 根木棒的骄傲拥有者。每根木棒的长度都是 1 到 n 之间的整数,且所有木棒的长度互不相同。
你需要将这些木棒排成一行。有一个长度为 n−1 的字符串 s 描述了排列的要求:
具体来说,对于每个 i(从 1 到 n−1):
- 如果 si=<,那么位置 i+1 的木棒长度必须比它之前的所有木棒都短;
- 如果 si=>,那么位置 i+1 的木棒长度必须比它之前的所有木棒都长。
请找出任意一个满足条件的木棒排列。可以证明这样的排列总是存在。
输入格式
每个测试包含多个测试用例。第一行包含测试用例的数量 t(1≤t≤500)。接下来是各个测试用例的描述。
每个测试用例的第一行包含一个整数 n(2≤n≤100)——木棒的数量。
每个测试用例的第二行包含一个长度为 n−1 的字符串 s,由字符 < 和 > 组成——描述排列的要求。
输出格式
对于每个测试用例,输出 n 个整数 a1,a2,…,an(1≤ai≤n,且 ai 互不相同)——按顺序排列的木棒长度。如果存在多个解,输出其中任意一个即可。
输入输出样例
输入#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=<,这意味着 a2 必须比 a1 短。
因此,一种可能的排列是 [2,1]。
对于第二个测试用例,排列的要求如下:
- s1=<,这意味着 a2 必须比 a1 短;
- s2=<,这意味着 a3 必须比 a1 和 a2 都短;
- s3=>,这意味着 a4 必须比 a1、a2 和 a3 都长;
- s4=<,这意味着 a5 必须比 a1、a2、a3 和 a4 都短。
因此,一种可能的排列是 [4,3,2,5,1]。
翻译由 DeepSeek V3 完成
输入解题思路,AI测评打分。不知道怎么写?