CF1773J.Jumbled Trees

省选/NOI-

通过率:0%

AC君温馨提醒

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

题目描述

给定一个无向连通图,包含 nn 个顶点和 mm 条边。每条边都关联一个计数器,初始值为 00。每次操作,你可以任选一棵生成树,并将任意值 vv 加到这棵生成树上的所有边的计数器上。

请判断是否可以使每条边的计数器都等于其目标值 xix_i(模质数 pp 意义下),并给出一组实现该目标的操作序列。

输入格式

第一行包含三个整数 nn、mm 和 pp,分别表示顶点数、边数和模数(1≤n≤5001 \le n \le 500;1≤m≤10001 \le m \le 1000;2≤p≤1092 \le p \le 10^9,pp 为质数)。

接下来的 mm 行,每行包含三个整数 uiu_i、viv_i、xix_i,分别表示第 ii 条边的两个端点和该边计数器的目标值(1≤ui,vi≤n1 \le u_i, v_i \le n;0≤xi<p0 \le x_i < p;ui≠viu_i \neq v_i)。

保证图是连通的。不存在自环,但同一对顶点之间可能有多条边。

输出格式

如果无法实现目标计数器值,输出 −1-1。

否则,输出操作次数 tt,接下来 tt 行,每行描述一次操作。每行首先是一个整数 vv(0≤v<p0 \le v < p),表示本次操作的计数器增量,随后是 n−1n-1 个整数 e1,e2,…,en−1e_1, e_2, \ldots, e_{n-1}(1≤ei≤m1 \le e_i \le m),表示本次操作选取的生成树的边编号。

操作次数 tt 不超过 2m2m。你不需要让 tt 最小化。只要答案满足 t≤2mt \le 2m 即可。允许重复选择生成树。

输入输出样例

  • 输入#1

    3 3 101
    1 2 30
    2 3 40
    3 1 50

    输出#1

    3
    10 1 2
    20 1 3
    30 2 3
  • 输入#2

    2 2 37
    1 2 8
    1 2 15

    输出#2

    2
    8 1
    15 2
  • 输入#3

    5 4 5
    1 3 1
    2 3 2
    2 5 3
    4 1 4

    输出#3

    -1

说明/提示

由 ChatGPT 4.1 翻译

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

首页