AT_KeioPC2025_i.Odd Even Partition

通过率:0%

AC君温馨提醒

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

题目描述

给定一个有 NN 个顶点 MM 条边的简单无向图,顶点编号为 11 到 NN。第 ii 条边连接顶点 uiu_i 和顶点 viv_i。

同时给你一个由 X、Y、? 组成的长度为 NN 的字符串 SS。

请判断是否存在一组顶点集合对 (X,Y)(X, Y),满足以下条件,并在存在时给出其中一组解。

  • 每个顶点 i (1≤i≤N)i~(1 \leq i \leq N) 只属于 X,YX, Y 中的一个;
  • XX 所诱导的子图中,每个顶点的度数都是奇数;
  • YY 所诱导的子图中,每个顶点的度数都是偶数;
  • 若 $S_i = $ X,则顶点 ii 必须属于 XX;$S_i = $ Y 时顶点 ii 必须属于 YY。

这里,诱导子图指在图 GG 上,顶点集合为 SS 的所有顶点,边集合为「GG 中两端都属于 SS 的所有边」的那张图。

输入格式

输入按以下格式从标准输入读取。

N MN ~ M
u1 v1u_1 ~ v_1
⋮\vdots
uM vMu_M ~ v_M
SS

输出格式

如果不存在满足条件的 (X,Y)(X, Y),请输出 -1。

如果存在满足条件的解,请输出一个长度为 NN 的字符串 TT,满足:

  • 若顶点 ii 属于 XX,则 TiT_i 等于 X;属于 YY 时 TiT_i 等于 Y。

若有多个解,输出任意一个均可。

输入输出样例

  • 输入#1

    3 2
    1 2
    2 3
    ???

    输出#1

    XXY
  • 输入#2

    4 6
    1 2
    1 3
    1 4
    2 3
    2 4
    3 4
    XXX?

    输出#2

    XXXX
  • 输入#3

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

    输出#3

    -1
  • 输入#4

    10 11
    1 5
    2 3
    2 10
    3 6
    3 7
    4 5
    4 9
    5 8
    6 7
    6 10
    8 9
    ?XY??YY???

    输出#4

    XXYXXYYXYX

说明/提示

部分分数

本题设有部分分数。

  • 若 SS 中的 ? 个数不超过 1717,并答对该组数据,可得 11 分。

样例解释 1

令 X={1,2},Y={3}X = \{1, 2\}, Y = \{3\}。
集合 XX 的诱导子图只包含一条边 (1,2)(1, 2),所以 1,21, 2 的度数为 11。
集合 YY 的诱导子图中无边,因此 33 的度数为 00。
因此满足所有条件。你也可以输出 YXX。

数据范围

  • 1≤N≤5001 \leq N \leq 500
  • 0≤M≤N(N−1)/20 \leq M \leq N(N-1)/2
  • 1≤ui,vi≤N1 \leq u_i, v_i \leq N
  • 所给图为简单图
  • N,M,ui,viN, M, u_i, v_i 均为整数
  • SS 为由 X、Y、? 组成的长度为 NN 的字符串

由 ChatGPT 5 翻译

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

首页