g308: pB. 跳跳布朗尼(Brownie)
Tags : 陣列
Accepted rate : 24人/25人 ( 96% ) [非即時]
評分方式:
Tolerant

最近更新 : 2021-09-14 21:10

Content

現在有 N 個格子,由左至右值分別為 x0, x1, x2, ..., xN-1

每個格子上都有一個數字,代表其傳送點編號;

當你踏進格子 i 時,將會觸發其傳送點,並被傳送至編號 xi 的格子中;

之後繼續觸發下個傳送點,依序往復。

 

傳送點在發揮過一次效力後就會被破壞,

也就是傳送的過程,會在被傳送到「曾經走過」的格子時停止。

 

現在已知某些格子上放有好吃的布朗尼,

熱愛甜點的你,當然希望能夠吃到越多越多。

 

給定由編號 T 的格子出發,經過傳送點的傳送,請問最多可以吃到幾個布朗尼?

Input

第一行有兩個正整數 N 和 T

代表總共有 N 個格子 ( 1 ≤ N ≤ 1000 ),並且將從編號 T ( 0 ≤ T ≤ N-1 ) 的格子開始

 

第二行由左至右有 N 個正整數 x( 0 ≤ xi ≤ N-1 )

兩兩之間以空格隔開,代表傳送點資訊

 

第三行由左至右有 N 個正整數 y( yi = 0 或 1 )

兩兩之間以空格隔開,代表該格有 (yi = 1) 或 沒有 (yi = 0) 布朗尼

Output

最多可以吃到幾個布朗尼

Sample Input #1
6 3
0 5 0 4 2 0
0 0 1 0 1 0
Sample Output #1
2
Sample Input #2
13 12
3 0 0 5 1 3 1 2 0 8 3 0 9
1 1 0 0 1 0 1 0 1 1 1 0 0
Sample Output #2
3
測資資訊:
記憶體限制: 64 MB
公開 測資點#0 (5%): 0.5s , <1K
公開 測資點#1 (5%): 0.5s , <1K
公開 測資點#2 (5%): 0.5s , <1K
公開 測資點#3 (5%): 0.5s , <1K
公開 測資點#4 (5%): 0.5s , <1K
公開 測資點#5 (5%): 0.5s , <1K
公開 測資點#6 (5%): 0.5s , <1K
公開 測資點#7 (5%): 0.5s , <1K
公開 測資點#8 (5%): 0.5s , <1K
公開 測資點#9 (5%): 0.5s , <1K
公開 測資點#10 (5%): 0.5s , <1M
公開 測資點#11 (5%): 0.5s , <1M
公開 測資點#12 (5%): 0.5s , <1M
公開 測資點#13 (5%): 0.5s , <1M
公開 測資點#14 (5%): 0.5s , <1M
公開 測資點#15 (5%): 0.5s , <1M
公開 測資點#16 (5%): 0.5s , <1M
公開 測資點#17 (5%): 0.5s , <1K
公開 測資點#18 (5%): 0.5s , <1M
公開 測資點#19 (5%): 0.5s , <1M
Hint :
Tags:
陣列
出處:
110學年度hgsh校內賽 [管理者:
mushroom.cs9... (mushroom)
]


ID User Problem Subject Hit Post Date
27158
r1cky (APCS實作兩級分)
g308
Java 解題心得
24 2021-09-15 20:42