首页 / 题库

P90059 - Cow Line

组合数学
通过次数0 提交次数0 内存限制 512MB 时间限制1秒

描述

编号为 $1$ 到 $N (1 \leq N \leq 20)$ 的 $N$ 头奶牛正在和农夫约翰玩他们的又一个疯狂游戏。奶牛们将自己排列成一行,并询问农夫约翰它们的排列编号是多少。作为回应,农夫约翰可以给它们一个排列编号,奶牛们必须重新排列成那个排列。

排列编号是通过按字典序给所有排列编号来分配的。

考虑这个例子:

农夫约翰有 $5$ 头奶牛,并给它们排列编号 $3$ 。

按升序字典序排列的排列:第 $1$ 个:$1,2,3,4,5$

第 $2$ 个:$1,2,3,5,4$

第 $3$ 个:$1,2,4,3,5$

因此,奶牛们将自己排列成奶牛排列 $1,2,4,3,5$。

奶牛们反过来排列成配置「$1,2,5,3,4$」,并询问农夫约翰它们的排列编号是多少。

继续列表:

第 $4$ 个:$1,2,4,5,3$

第 $5$ 个:$1,2,5,3,4$

农夫约翰可以看到答案是 $5$ 。

农夫约翰和奶牛们希望你能帮助他们玩这个游戏。他们有 $K (1 \leq K \leq 10,000)$ 个查询需要帮助。查询 $i$ 有两个部分:$C_i$ 是命令,可以是 `P` 或 `Q` 。

如果 $C_i$ 是 `P` ,那么查询的第二部分将是一个整数 $A_i (1 \leq A_i \leq N!)$,这是一个排列编号。这是农夫约翰挑战奶牛们排成正确的奶牛排列。

如果 $C_i$ 是 `Q`,那么查询的第二部分将是 $N$ 个不同的整数 $B_{ij} (1 \leq B_{ij} \leq N)$。这将表示一个奶牛排列。这是奶牛们挑战农夫约翰找出它们的排列编号。

输入

\* 第 $1$ 行:两个用空格分隔的整数:$N$ 和 $K$

\* 第 $2$ 行到第 $2 \times K + 1$ 行:第 $2 \times i$ 行和第 $2 \times i + 1$ 行将包含一个查询。

第 $2 \times i$ 行将只包含一个字符:如果奶牛们排列并询问农夫约翰它们的排列编号,则为 `Q`;如果农夫约翰给奶牛们一个排列编号,则为 `P`。

如果第 $2 \times i$ 行是 `Q`,那么第 $2 \times i + 1$ 行将包含 $N$ 个用空格分隔的整数 $B_ij$,表示奶牛排列。如果第 $2 \times i$ 行是 `P`,那么第 $2 \times i + 1$ 行将包含一个整数 $A_i$,这是要解决的排列编号。

 

输出

\* 第 $1$ 行到第 $K$ 行:第 $i$ 行将包含查询 $i$ 的答案。

如果输入的第 $2 \times i$ 行是 `Q`,那么这一行将包含一个整数,即第 $2 \times i + 1$ 行中奶牛排列的排列编号。

如果输入的第 $2 \times i$ 行是 `P`,那么这一行将包含 $N$ 个用空格分隔的整数,给出第 $2 \times i + 1$ 行中编号的奶牛排列。

样例

  • 复制
  • 复制

提示

意见反馈

    最多上传3张图片,格式为JPG、PNG、JPEG,单张不超过5MB

    注册

    发送验证码

    密码必须包含数字、字母和特殊字符

    找回密码

    发送验证码

    密码必须包含数字、字母和特殊字符

    运行 ID:67149

    • 测试点1:Accepted
    • 用时:0 ms
    • 内存:288 kb
    • 测试点2:Accepted
    • 用时:0 ms
    • 内存:288 kb
    输入
    203
    输出
    203

    test

    测评信息

    错误.in文件下载

    错误.out文件下载

    运行 ID:67149

    2019-01-24 15:06:36