zoukankan      html  css  js  c++  java
  • 编程之美2014 资格赛题目1 : 同构

    时间限制:2000ms
    单点时限:1000ms
    内存限制:256MB

    描述

    给定2个树A和B,保证A的节点个数>=B的节点个数。

    现在你需要对树A的边进行二染色。

    一个好的染色方案,指不存在一个树A中的连通块,同时满足以下2个条件

    1. 其中只有同色的边

    2. 和B同构。两个树同构是指,存在一个一一映射(既是单射又是满射),将树B的各节点映射到不同的树A的节点,使得原来在树B中相邻的点,在映射后,仍相邻。

    问是否存在一种好的染色方案。

     

    输入

    第一行一个整数T (1<=T<=10),表示数据组数。

    接下来是T组输入数据,测试数据之间没有空行。

     

    每组数据格式如下:

    第一行一个整数N ,表示树A的节点总数。

    接下来N-1行,每行2个数a, b (1 <= a, b <= N)表示树A的节点a和b之间有一条边。

    接下来一行,一个整数M(1 <= M <= N),表示树B的节点总数。

    接下来M-1行,每行2个数a, b (1 <= a, b <= M)表示树B的节点a和b之间有一条边。

     

    输出

    对每组数据,先输出“Case x: ”,x表示是第几组数据,然后接“YES”/“NO”,表示是否存在所求的染色方案。

     

    数据范围

    小数据:1 <= N <= 20

    大数据:1 <= N <= 1000000

     

    样例解释

    无论如何染色,只要从A中挑一条边就行了。

     

    样例输入
    1
    3
    1 2
    2 3
    2
    1 2
    
    样例输出
    Case 1: NO
  • 相关阅读:
    21.网络文件共享服务
    20.LANMP架构
    18.自动运维工具ansible
    17.MySQL数据库
    16.DNS服务
    15.系统自动部署
    14.加密技术和安全
    13.系统启动和服务管理
    12.进程管理和计划任务
    11.网络管理和配置
  • 原文地址:https://www.cnblogs.com/stonehat/p/3659205.html
Copyright © 2011-2022 走看看