Problem:


Score : 400 points

Problem Statement

Takahashi will play a game using a piece on an array of squares numbered 1, 2, \cdots, N. Square i has an integer C_i written on it. Also, he is given a permutation of 1, 2, \cdots, N: P_1, P_2, \cdots, P_N.

Now, he will choose one square and place the piece on that square. Then, he will make the following move some number of times between 1 and K (inclusive):

In one move, if the piece is now on Square i (1 \leq i \leq N), move it to Square P_i. Here, his score increases by C_{P_i}.

Help him by finding the maximum possible score at the end of the game. (The score is 0 at the beginning of the game.)

Constraints

2 \leq N \leq 5000

1 \leq K \leq 10^9

1 \leq P_i \leq N

P_i \neq i

P_1, P_2, \cdots, P_N are all different.

-10^9 \leq C_i \leq 10^9

All values in input are integers.

Input

Input is given from Standard Input in the following format:

N K
P_1 P_2 \cdots P_N
C_1 C_2 \cdots C_N

Output

Print the maximum possible score at the end of the game.

Sample Input 1

5 2
2 4 5 1 3
3 4 -10 -8 8

Sample Output 1

8

When we start at some square of our choice and make at most two moves, we have the following options:

If we start at Square 1, making one move sends the piece to Square 2, after which the score is 4. Making another move sends the piece to Square 4, after which the score is 4 + (-8) = -4.

If we start at Square 2, making one move sends the piece to Square 4, after which the score is -8. Making another move sends the piece to Square 1, after which the score is -8 + 3 = -5.

If we start at Square 3, making one move sends the piece to Square 5, after which the score is 8. Making another move sends the piece to Square 3, after which the score is 8 + (-10) = -2.

If we start at Square 4, making one move sends the piece to Square 1, after which the score is 3. Making another move sends the piece to Square 2, after which the score is 3 + 4 = 7.

If we start at Square 5, making one move sends the piece to Square 3, after which the score is -10. Making another move sends the piece to Square 5, after which the score is -10 + 8 = -2.

The maximum score achieved is 8.

Sample Input 2

2 3
2 1
10 -7

Sample Output 2

13

Sample Input 3

3 3
3 1 2
-1000 -2000 -3000

Sample Output 3

-1000

We have to make at least one move.

Sample Input 4

10 58
9 1 6 7 8 4 3 2 10 5
695279662 988782657 -119067776 382975538 -151885171 -177220596 -169777795 37619092 389386780 980092719

Sample Output 4

29507023469

The absolute value of the answer may be enormous.



Sample input:
5 2
2 4 5 1 3
3 4 -10 -8 8


Sample output:
8

Submission status: Wrong Answer

Solution code:
# compiled by pythran
"""
#pythran export main2()
import numpy as np
i4 = np.int32
i8 = np.int64


def solve_core(a, n, u):
    cs = np.cumsum(a)
    b = 0
    max_index = -1
    res = -1000000000
    for i in range(n):
        if max_index < i:
            max_index = np.argmax(cs[i:i + u])
            max_value = cs[i + max_index]
        else:
            if max_value <= cs[i + u - 1]:
                max_value = cs[i + u - 1]
                max_index = i + u - 1
        res = max(res, max_value - b)
        b = cs[i]
    return res


def solve(n, k, p, c):
    mark = np.zeros_like(p)
    cwork = np.empty(n * 2, i8)

    ans = -1000000000
    for i in range(n):
        if mark[i] == 1:
            continue

        cwork[0] = c[i]
        mark[i] = 1
        m = 1
        j = p[i]
        while j != i:
            cwork[m] = c[j]
            mark[j] = 1
            m += 1
            j = p[j]

        r = k // m
        s = k % m

        t = np.sum(cwork[:m])
        if t > 0:
            res = t * (r - 1) if r > 1 else 0
            u = m + s if k >= m else k
            cwork[m: 2 * m] = cwork[: m]
            cwork[2 * m: 2 * m + s] = cwork[: s]
            res += solve_core(cwork[: m + u - 1], m, u)
        else:
            u = m - 1 if k > m - 1 else k
            cwork[m: m + u - 1] = cwork[: u - 1]
            res = solve_core(cwork[: m + u - 1], m, u)
        ans = max(ans, res)
    return ans


def main(file_in):
    f = open(file_in)
    n, k = [int(x) for x in f.readline().split()]
    p = np.array([int(x) - 1 for x in f.readline().split()])
    c = np.array([int(x) for x in f.readline().split()])
    ans = solve(n, k, p, c)
    print(ans)


def main2():
    main('/dev/stdin')
"""
import os, sys
p = os.path.dirname(__file__)
pymain = os.path.join(p, "a.out")
if len(sys.argv) == 1:
    import subprocess
    if p == "":
        pymain = "./" + pymain
    subprocess.call(pymain)
else:
    import gzip, base64, stat
    gz = b'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'
    bin = gzip.decompress(base64.b64decode(gz))
    with open(pymain, "wb") as f:
        f.write(bin)
    os.chmod(pymain, 0o775)