P3714 [BJOI2017]树的难题

    • 38通过
    • 243提交
  • 题目提供者 洛谷OnlineJudge
  • 评测方式 云端评测
  • 标签 各省省选 2017 高性能
  • 难度 省选/NOI-
  • 时空限制 1000ms / 128MB

题解

  • 提示:收藏到任务计划后,可在首页查看。
  • 最新讨论 显示

    推荐的相关题目 显示

    题目描述

    给你一棵 n 个点的无根树。

    树上的每条边具有颜色。一共有 m 种颜色,编号为 1 到 m。第 i 种颜色的权值为 ci。

    对于一条树上的简单路径,路径上经过的所有边按顺序组成一个颜色序列,序列可以划

    分成若干个相同颜色段。定义路径权值为颜色序列上每个同颜色段的颜色权值之和。

    请你计算,经过边数在 l 到 r 之间的所有简单路径中,路径权值的最大值。

    输入输出格式

    输入格式:

    第一行,四个整数 n, m, l, r。

    第二行,m个整数 c1, c2, ……, cm,由空格隔开。依次表示每个颜色的权值。

    接下来 n-1 行,每行三个整数

    输出格式:

    输出一行,一个整数,表示答案。

    输入输出样例

    输入样例#1: 复制
    5 3 1 4
    -1 -5 -2
    1 2 1
    1 3 1
    2 4 2
    2 5 3
    输出样例#1: 复制
    -1
    输入样例#2: 复制
    8 4 3 4
    -7 9 6 1
    1 2 1
    1 3 2
    1 4 1
    2 5 1
    5 6 2
    3 7 1
    3 8 3
    输出样例#2: 复制
    11

    说明

    【样例解释 1】

    颜色权值均为负,最优路径为 (1, 2) 或 (1, 3)。

    【样例解释 2】

    最优路径为 (3, 1, 2, 5, 6),其颜色序列为 (2, 1, 1, 2)。

    【数据规模与约定】

    本题一共有 10 个测试点。

    下表是每个测试点的数据规模和约定:

    #1 n = 10^3 m ≤ n 无其它约束
    #2 n = 10^4 m = 2
    #3 n = 10^5 m ≤ n 所有的点度数不超过 2
    #4 n = 2*10^5 m ≤ n
    #5 n = 10^5 m = 10 l = 1, r = n-1
    #6 n = 2*10^5 m ≤ n
    #7 n = 10^5 m = 50 无其它约束

    8 m ≤ n

    9 n = 2*10^5 m = 100

    10 m ≤ n

    对于 100%的数据,1 ≤ n, m ≤ 2*10^5, 1 ≤ l ≤ r ≤ n, |ci| ≤ 10^4。保证 树上至少存在一条经过边数在 l 到 r 之间的路径。

    提示
    标程仅供做题后或实在无思路时参考。
    请自觉、自律地使用该功能并请对自己的学习负责。
    如果发现恶意抄袭标程,将按照I类违反进行处理。