CF702E.Analysis of Pathes in Functional Graph

提高+/省选-

通过率:0%

时间限制:2.00s

内存限制:512MB

AC君温馨提醒

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

题目描述

You are given a functional graph. It is a directed graph, in which from each vertex goes exactly one arc. The vertices are numerated from 0 to n - 1.

Graph is given as the array _f_0, _f_1, ..., f__n - 1, where f__i — the number of vertex to which goes the only arc from the vertex i. Besides you are given array with weights of the arcs _w_0, _w_1, ..., w__n - 1, where w__i — the arc weight from i to f__i.

The graph from the first sample test.

Also you are given the integer k (the length of the path) and you need to find for each vertex two numbers s__i and m__i, where:

  • s__i — the sum of the weights of all arcs of the path with length equals to k which starts from the vertex i;
  • m__i — the minimal weight from all arcs on the path with length k which starts from the vertex i.

The length of the path is the number of arcs on this path.

你被给定一个函数图(functional graph)。它是一个有向图,其中每个顶点恰好引出一条有向边。顶点编号为 00 到 n−1n-1。

该图以数组 f0,f1,…,fn−1f_0, f_1, \dots, f_{n-1} 给出,其中 fif_i 表示从顶点 ii 出发的唯一有向边所指向的顶点编号。此外,你还被给定一个边权数组 w0,w1,…,wn−1w_0, w_1, \dots, w_{n-1},其中 wiw_i 表示从顶点 ii 指向 fif_i 的那条边的权重。

第一个样例测试中的图。

同时,你被给定一个整数 kk(路径长度),你需要对每个顶点 ii 计算两个数 sis_i 和 mim_i,其中:

  • sis_i —— 从顶点 ii 出发、长度恰好为 kk 的路径上所有边的权重之和;
  • mim_i —— 从顶点 ii 出发、长度为 kk 的路径上所有边的权重的最小值。

路径的长度定义为该路径所包含的边的数量。

输入格式

The first line contains two integers n, k (1 ≤ n ≤ 105, 1 ≤ k ≤ 1010). The second line contains the sequence _f_0, _f_1, ..., f__n - 1 (0 ≤ f__i < n) and the third — the sequence _w_0, _w_1, ..., w__n - 1 (0 ≤ w__i ≤ 108).

第一行包含两个整数 nn 和 kk(1≤n≤1051 \leq n \leq 10^5,1≤k≤10101 \leq k \leq 10^{10})。第二行包含序列 f0, f1, …, fn−1f_0,\,f_1,\,\dots,\,f_{n-1}(0≤fi<n0 \leq f_i < n),第三行包含序列 w0, w1, …, wn−1w_0,\,w_1,\,\dots,\,w_{n-1}(0≤wi≤1080 \leq w_i \leq 10^8)。

输出格式

Print n lines, the pair of integers s__i, m__i in each line.

输出 n 行,每行包含一对整数 s__i 和 m__i。

输入输出样例

  • 输入#1

    7 3
    1 2 3 4 3 2 6
    6 3 1 4 2 2 3

    输出#1

    10 1
    8 1
    7 1
    10 2
    8 2
    7 1
    9 3
  • 输入#2

    4 4
    0 1 2 3
    0 1 2 3

    输出#2

    0 0
    4 1
    8 2
    12 3
  • 输入#3

    5 3
    1 2 3 4 0
    4 1 2 14 3

    输出#3

    7 1
    17 1
    19 2
    21 3
    8 1

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

首页