QOJ.ac

QOJ

حد الوقت: 3.0 s حد الذاكرة: 512 MB مجموع النقاط: 100

#12723. 微小差异

الإحصائيات

小莉迪亚(Lidia)喜欢玩数字游戏。今天她有一个正整数 $n$,她想将其分解为若干个正整数的乘积。

因为莉迪亚还小,她喜欢玩“差值很小”的数字。因此,分解中的所有数字之差最多为 $1$。当然,分解中所有数字的乘积必须等于 $n$。如果两个分解包含的整数个数相同,且存在一种排列使得第一个分解可以变换为第二个分解,那么她认为这两个分解是相同的。

编写一个程序,找出所有莉迪亚今天可以玩的分解方案。

输入仅包含一行,为一个整数 $n$ ($1 \le n \le 10^{18}$)。

第一行输出分解方案的总数,如果方案数有无穷多个,则输出 $-1$。如果方案数有限,请在后续行中打印出所有分解方案。每行首先输出该分解中元素的个数 $k_i$,随后输出这 $k_i$ 个整数(顺序不限)。请注意,仅顺序不同的分解被视为相同。

样例

输入格式 1

12

输出格式 1

3
1 12
3 2 3 2
2 4 3

输入格式 2

1

输出格式 2

-1

说明

在第二个样例中,$1$ 可以表示为任意数量的 $1$ 的乘积。

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.