CF718D.Andrew and Chemistry

省选/NOI-

通过率:0%

AC君温馨提醒

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

题目描述

在化学课上,Andrew 学到了饱和烃(烷烃)能够发生自由基氯化反应。Andrew 是个非常好奇的男孩,他想知道对于给定的烷烃,反应可能产生多少种不同的产物。他已经解决了小分子的情况,但对于较大的分子,他遇到了一些困难,并请求你帮忙。

形式化地说,给定一棵有 nn 个顶点的树,且每个顶点的度数不超过 44。你需要计算,通过向这棵树中加入一个新顶点和一条新边(新图依然是一棵树,且所有顶点度数仍不超过 44)可以获得多少种本质不同的、非同构的树。

当存在一个双射 f(v)f(v),使得顶点 uu 和 vv 之间有边,当且仅当顶点 f(u)f(u) 和 f(v)f(v) 之间有边时,称两棵树是同构的。

输入格式

第一行包含一个整数 nn(1≤n≤1000001 \leq n \leq 100000)——树的顶点数。

接下来 n−1n-1 行,每行包含两个整数 uiu_{i} 和 viv_{i}(1≤ui,vi≤n1 \leq u_{i}, v_{i} \leq n)——被一条边连接的两个顶点的编号。保证给定的图是一棵树,且每个顶点的度数不超过 44。

输出格式

输出一个整数,表示问题的答案。

输入输出样例

  • 输入#1

    4
    1 2
    2 3
    2 4
    

    输出#1

    2
    
  • 输入#2

    5
    1 2
    1 3
    1 4
    1 5
    

    输出#2

    1
    
  • 输入#3

    5
    2 5
    5 3
    4 3
    4 1
    

    输出#3

    3
    

说明/提示

在第一个样例中,可以把新顶点添加到任意一个已有顶点上,但将新顶点添加到顶点 11、33 和 44 得到的树是同构的,因此答案是 22。

在第二个样例中,不能把新顶点添加到第一个顶点上,因为它的度数已经到 44。而将新顶点添加到顶点 22、33、44 和 55 得到的树都是同构的,因此答案是 11。

由 ChatGPT 5 翻译

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

首页