QOJ.ac

QOJ

Limite de temps : 2 s Limite de mémoire : 256 MB Points totaux : 100 Hackable ✓

#12533. 吉特巴舞者

Statistiques

你抓到了一种迷人的昆虫——“抖动虫”(jitterbug)。为了自娱自乐,你画了一个迷宫(可以表示为一个不含自环或重边的无向图),并教会了你的虫子在其中移动。你注意到,当你把虫子放在迷宫的某个顶点后,它会采用以下移动策略:等概率地选择当前顶点的一条关联边,并移动到该边的另一端;然后再次随机选择一条边,以此类推。

通常,你会把虫子放在迷宫的某个起点,并观察它直到它到达选定的终点(当然,起点和终点之间必须至少存在一条路径)。你喜欢看虫子在迷宫里跑来跑去,所以你想构造一个迷宫,使得虫子从起点到达终点所需的平均步数尽可能多。

例如,假设 $n = 3$。可以证明,在顶点 1 和 3 之间期望移动步数最长的迷宫是链式结构 1–2–3:平均移动步数为 4。

请构造一个包含 200 个顶点的迷宫,使得虫子从顶点 1 出发到达顶点 200 的平均步数至少为 $10^6$。

输入格式

输入的第一行包含两个空格分隔的整数 $n$ 和 $b$ —— 顶点的数量以及平均移动步数的下限(即,如果平均移动步数至少为 $b$,你的答案将被接受)。

本题仅有两个测试用例:

  1. $n = 3, b = 4$。
  2. $n = 200, b = 10^6$。

输出格式

第一行输出一个整数 $m$ —— 你构造的迷宫中的边数。

接下来的 $m$ 行描述迷宫的边。在第 $i$ 行输出两个整数 —— 第 $i$ 条边连接的顶点编号。请记住,边是双向的。

你的图必须不包含自环或重边;顶点 1 和 $n$ 之间必须至少存在一条路径。

样例

输入 1

3 4

输出 1

2
1 2
2 3

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.