CF263D.Cycle in Graph

普及+/提高

通过率:0%

时间限制:2.00s

内存限制:256MB

AC君温馨提醒

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

题目描述

You've got a undirected graph G, consisting of n nodes. We will consider the nodes of the graph indexed by integers from 1 to n. We know that each node of graph G is connected by edges with at least k other nodes of this graph. Your task is to find in the given graph a simple cycle of length of at least k + 1.

A simple cycle of length d (d > 1) in graph G is a sequence of distinct graph nodes _v_1, _v_2, ..., v__d such, that nodes _v_1 and v__d are connected by an edge of the graph, also for any integer i (1 ≤ i < d) nodes v__i and v__i + 1 are connected by an edge of the graph.

你有一个包含 nn 个节点的无向图 GG。我们将图中的节点用从 11 到 nn 的整数进行编号。已知图 GG 中每个节点至少与该图中其余 kk 个节点通过边相连。你的任务是在给定图中找出一个长度至少为 k+1k+1 的简单环。

图 GG 中长度为 dd(d>1d > 1)的简单环,是指一串互不相同的图节点 v1, v2, …, vdv_1,\,v_2,\,\dots,\,v_d,满足:节点 v1v_1 与 vdv_d 之间存在图的一条边;且对任意整数 ii(1≤i<d1 \le i < d),节点 viv_i 与 vi+1v_{i+1} 之间也存在图的一条边。

输入格式

The first line contains three integers n, m, k (3 ≤ n, m ≤ 105; 2 ≤ k ≤ n - 1) — the number of the nodes of the graph, the number of the graph's edges and the lower limit on the degree of the graph node. Next m lines contain pairs of integers. The i-th line contains integers a__i, b__i (1 ≤ a__i, b__i ≤ n; a__i ≠ b__i) — the indexes of the graph nodes that are connected by the i-th edge.

It is guaranteed that the given graph doesn't contain any multiple edges or self-loops. It is guaranteed that each node of the graph is connected by the edges with at least k other nodes of the graph.

第一行包含三个整数 nn、mm、kk(3 ≤ n, m ≤ 1053 \leq n, m \leq 10^5;2 ≤ k ≤ n − 12 \leq k \leq n - 1)—— 分别表示图的节点数、边数以及图中节点度数的下限。接下来的 mm 行每行包含一对整数。第 ii 行包含整数 aia_i、bib_i(1 ≤ ai, bi ≤ n1 \leq a_i, b_i \leq n;ai ≠ bia_i \neq b_i)—— 表示由第 ii 条边所连接的两个图节点的编号。

保证给定图中不包含重边或自环。同时保证图中每个节点至少与图中其余 kk 个节点通过边相连。

输出格式

In the first line print integer r (r ≥ k + 1) — the length of the found cycle. In the next line print r distinct integers _v_1, _v_2, ..., v__r (1 ≤ v__i ≤ n) — the found simple cycle.

It is guaranteed that the answer exists. If there are multiple correct answers, you are allowed to print any of them.

第一行输出整数 rr(r≥k+1r \geq k + 1)—— 找到的环的长度。
第二行输出 rr 个互不相同的整数 v1, v2, …, vrv_1,\,v_2,\,\dots,\,v_r(1≤vi≤n1 \leq v_i \leq n)—— 找到的简单环。

保证答案存在。若存在多个正确答案,输出任意一个即可。

输入输出样例

  • 输入#1

    3 3 2
    1 2
    2 3
    3 1

    输出#1

    3
    1 2 3
  • 输入#2

    4 6 3
    4 3
    1 2
    1 3
    1 4
    2 3
    2 4

    输出#2

    4
    3 4 1 2

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

首页