CF977E.Cyclic Components

普及/提高-

通过率:0%

时间限制:2.00s

内存限制:256MB

AC君温馨提醒

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

题目描述

You are given an undirected graph consisting of nn vertices and mm edges. Your task is to find the number of connected components which are cycles.

Here are some definitions of graph theory.

An undirected graph consists of two sets: set of nodes (called vertices) and set of edges. Each edge connects a pair of vertices. All edges are bidirectional (i.e. if a vertex aa is connected with a vertex bb, a vertex bb is also connected with a vertex aa). An edge can't connect vertex with itself, there is at most one edge between a pair of vertices.

Two vertices uu and vv belong to the same connected component if and only if there is at least one path along edges connecting uu and vv.

A connected component is a cycle if and only if its vertices can be reordered in such a way that:

  • the first vertex is connected with the second vertex by an edge,
  • the second vertex is connected with the third vertex by an edge,
  • ...
  • the last vertex is connected with the first vertex by an edge,
  • all the described edges of a cycle are distinct.

A cycle doesn't contain any other edges except described above. By definition any cycle contains three or more vertices.

There are 66 connected components, 22 of them are cycles: [7,10,16][7, 10, 16] and [5,11,9,15][5, 11, 9, 15].

给你一个包含 nn 个顶点和 mm 条边的无向图。你的任务是找出其中构成环的连通分量的数量。

以下是一些图论中的定义:

无向图由两个集合组成:节点集(称为顶点)和边集。每条边连接一对顶点。所有边均为双向的(即若顶点 aa 与顶点 bb 相连,则顶点 bb 也与顶点 aa 相连)。一条边不能连接一个顶点与其自身,且任意一对顶点之间至多只有一条边。

当且仅当存在至少一条沿边构成的路径连接顶点 uu 和 vv 时,uu 和 vv 属于同一连通分量。

一个连通分量是一个环,当且仅当它的顶点可以重新排序,使得满足以下条件:

  • 第一个顶点与第二个顶点之间有一条边,
  • 第二个顶点与第三个顶点之间有一条边,
  • …
  • 最后一个顶点与第一个顶点之间有一条边,
  • 上述构成环的所有边互不相同。

环中不包含除上述边之外的任何其他边。根据定义,任意环至少包含三个顶点。

图中共有 66 个连通分量,其中 22 个是环:[7,10,16][7, 10, 16] 和 [5,11,9,15][5, 11, 9, 15]。

输入格式

The first line contains two integer numbers nn and mm (1≤n≤2⋅1051 \le n \le 2 \cdot 10^5, 0≤m≤2⋅1050 \le m \le 2 \cdot 10^5) — number of vertices and edges.

The following mm lines contains edges: edge ii is given as a pair of vertices viv_i, uiu_i (1≤vi,ui≤n1 \le v_i, u_i \le n, ui≠viu_i \ne v_i). There is no multiple edges in the given graph, i.e. for each pair (vi,uiv_i, u_i) there no other pairs (vi,uiv_i, u_i) and (ui,viu_i, v_i) in the list of edges.

第一行包含两个整数 nn 和 mm(1≤n≤2⋅1051 \le n \le 2 \cdot 10^5,0≤m≤2⋅1050 \le m \le 2 \cdot 10^5)—— 分别表示顶点数和边数。

接下来的 mm 行描述各条边:第 ii 条边由一对顶点 viv_i、uiu_i 给出(1≤vi,ui≤n1 \le v_i, u_i \le n,ui≠viu_i \ne v_i)。给定图中不存在重边,即对于任意一对 (vi,ui)(v_i, u_i),在边列表中不会出现另一个相同的对 (vi,ui)(v_i, u_i) 或反向对 (ui,vi)(u_i, v_i)。

输出格式

Print one integer — the number of connected components which are also cycles.

输出一个整数——即同时也是环的连通分量的数量。

输入输出样例

  • 输入#1

    5 4
    1 2
    3 4
    5 4
    3 5

    输出#1

    1
  • 输入#2

    17 15
    1 8
    1 12
    5 11
    11 9
    9 15
    15 5
    4 13
    3 13
    4 3
    10 16
    7 10
    16 7
    14 3
    14 4
    17 6

    输出#2

    2

说明/提示

In the first example only component [3,4,5][3, 4, 5] is also a cycle.

The illustration above corresponds to the second example.

在第一个例子中,只有组件 [3,4,5][3, 4, 5] 同时也是一个环。

上面的示意图对应第二个例子。

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

首页