#P804. 集体舞

集体舞

题目描述

nn 名演员围成一个圆圈跳集体舞,每名演员都有一个位置。演员与位置的编号都是从 11 开始到 nn 结束。最初,第 ii 号演员站在第 ii 号位置。

在表演过程中,陆续会出现若干变换,变换分成两种类型:

  • 第一种变换称为旋转,用字母 r 表示。在这种变换下:

    • 原先 11 号位上的演员将移动去 22 号位
    • 原先 22 号位上的演员将移动去 33 号位
    • ... 以此类推
    • 原先 nn 号位上的演员将移动去 11 号位
  • 第二种变换称为翻转,用字母 f 表示。在这种变换下:

    • 11 号位上的演员与 nn 号位上的演员对换
    • 22 号位上的演员与 n1n-1 号位上的演员对换
    • ... 以此类推
    • 特别注意,若 nn 是奇数,则在翻转变换下,(n+1)/2(n+1)/2 号位置上的演员位置不变。

依次给定集体舞经历的变换类型,在舞蹈结束后,依次输出每个位置上的演员编号。

输入格式

  • 第一行:单个整数 nn
  • 第二行:一个字符串 ss 表示变换序列,保证只由 rf 组成。

输出格式

  • nn 行:在第 ii 行有一个整数,表示舞蹈结束时,第 ii 个位置上的演员编号。
4
rfr
4
3
2
1

样例解释 1

(1,2,3,4)--r-->(4,1,2,3) (4,1,2,3)--f-->(3,2,1,4) (3,2,1,4)--r-->(4,3,2,1)

数据范围

s|s| 表示输入字符串的长度

  • 30%30\% 的数据,1n30001\leq n \leq 30001s30001\leq |s| \leq 3000
  • 60%60\% 的数据,1n100,0001\leq n \leq 100,0001s100,0001\leq |s| \leq 100,000
  • 100%100\% 的数据,1n500,0001\leq n \leq 500,0001s500,0001\leq |s| \leq 500,000