{"code":"cses1160","name":"CSES - Planets Queries II | Truy vấn hành tinh II","description":"Bạn đang chơi một trò chơi bao gồm $n$ hành tinh. Mỗi hành tinh có một cổng dịch chuyển đến một hành tinh khác (hoặc chính hành tinh đó). \r\n\r\nNhiệm vụ của bạn là xử lý $q$ truy vấn có dạng: Bây giờ bạn đang ở hành tinh $a$ và muốn đến hành tinh $b$. Số lần dịch chuyển tối thiểu là bao nhiêu?\r\n\r\n## Input\r\n\r\n- Dòng đầu vào đầu tiên có hai số nguyên $n$ và $q$: số lượng hành tinh và truy vấn. Các hành tinh được đánh số $1,2,\\ldots,n$.\r\n- Dòng thứ hai có $n$ số nguyên $t_1,t_2,\\ldots,t_n$: với mỗi hành tinh, điểm đến của của cổng dịch chuyển. Có thể là $t_i=i$.\r\n- Cuối cùng, có $q$ dòng mô tả các truy vấn. Mỗi dòng có hai số nguyên $a$ và $b$: bây giờ bạn đang ở hành tinh $a$ và muốn đến hành tinh $b$.\r\n\r\n## Output\r\n\r\n- Với mỗi truy vấn, in số lần dịch chuyển tối thiểu. Nếu không thể đến đích, hãy in $−1$. \r\n\r\n## Constraints\r\n\r\n- $1 \\leq n, q \\leq 2 \\cdot 10 ^ 5$\r\n- $1 \\leq t_i \\leq n$\r\n- $1 \\leq a, b \\leq n$\r\n\r\n## Example\r\n\r\n**Sample input**\r\n```\r\n5 3\r\n2 3 2 3 2\r\n1 2\r\n1 3\r\n1 4\r\n```\r\n\r\n**Sample output**\r\n```\r\n1\r\n2\r\n-1\r\n```","points":1900.0,"partial":true,"time_limit":1.0,"memory_limit":524288,"short_circuit":false,"allowed_languages":[3,4,34,36,37,5,6,11,12,14,28,2,38,39,9,18,17,29,23,27,35,25,26,10,7,19,32,1,8,15,16,24,20,33,13,41,21,40],"is_public":true,"is_manually_managed":false,"permissions":{"can_edit":false}}