AT_agc044_f.[AGC044F] Name-Preserving Clubs

NOI/NOI+/CTSC

通过率:0%

AC君温馨提醒

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

题目描述

你面前有 NN 个名字各不相同的人和 KK 个俱乐部。已知每个俱乐部的完整成员列表(即 KK 个无序集合)。一个人可以同时参加多个俱乐部,也可以不参加任何俱乐部。多个俱乐部可能拥有相同的成员集合。此处,KK 是满足以下条件的最小值:

  • 若这 NN 个人全部改掉名字(但名字仍需各不相同),并给你 KK 个俱乐部改名后成员的名单(不告诉你哪个名单对应哪个俱乐部),你必须能够准确地推断出每个改名后的人对应的原名。

你的任务是计算出这样的俱乐部成员构成方式有多少种。如果超过 10001000 种,请输出 −1-1。

需要注意的是,如果存在一种重命名方式可以从一种成员构成转变为另一种,那么它们被认为是相同的。

输入格式

输入为一个整数 NN,表示人数。

输出格式

输出满足条件的成员构成的数量。如果数量超过 10001000 种,则输出 −1-1。

数据范围

  • 2≤N≤2⋅10182 \le N \le 2 \cdot 10^{18}

示例说明

  1. 当 KK 为 11 时,唯一的构成为 {{1}}\{\{1\}\},{{2}}\{\{2\}\} 被视为与其相同。

  2. 当 KK 为 22 时,唯一的构成为 {{1},{1,2}}\{\{1\}, \{1, 2\}\}。

  3. 当 KK 为 33 时,有多个不同的构成,例如:

    • {{1},{2},{1,3}}\{\{1\}, \{2\}, \{1, 3\}\}
    • {{1},{1,2},{2,3}}\{\{1\}, \{1, 2\}, \{2, 3\}\}
    • 其他诸如 {{1,2},{1,3},{1,2,4}}\{\{1, 2\}, \{1, 3\}, \{1, 2, 4\}\} 等。

这些示例旨在帮助理解何为不同的成员构成及如何计算。

本翻译由 AI 自动生成

输入输出样例

  • 输入#1

    2

    输出#1

    1
  • 输入#2

    3

    输出#2

    1
  • 输入#3

    4

    输出#3

    7
  • 输入#4

    13

    输出#4

    6
  • 输入#5

    26

    输出#5

    -1
  • 输入#6

    123456789123456789

    输出#6

    -1

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

首页