{"code":"nc2_bfs_0","name":"Đường đi ngắn nhất","description":"# Bài toán\r\n\r\nCho một đồ thị vô hướng $G$ gồm $N$ đỉnh đánh số từ $1$ đến $N$, được nối với nhau bằng $M$ cạnh. Mỗi cạnh có độ dài bằng $1$. Đồ thị này sẽ có một đỉnh trung tâm là $C$.\r\n\r\nCho biết đỉnh $C$, hãy tính khoảng cách đường đi ngắn nhất từ đỉnh $C$ đến các đỉnh trong đồ thị.\r\n\r\n#### Input\r\n- Dòng đầu tiên gồm $3$ số nguyên dương $N, M, C$ ($1 \\leq N, M \\leq 10^5, 1 \\leq C \\leq N$).\r\n- $M$ dòng tiếp theo, mỗi dòng gồm $2$ số $u, v$ thể hiện một cạnh nối giữa đỉnh $u$ và đỉnh $v$.\r\n\r\n#### Output\r\n- In ra $N$ dòng, dòng thứ $i$ là khoảng cách từ đỉnh $C$ đến đỉnh thứ $i$.  \r\n- Biết khoảng cách từ $C$ đến $C$ bằng $0$ và nếu không có đường đi, khoảng cách bằng `-1`.\r\n\r\n#### Sample Test\r\n\r\n!!! question \"Test\"\r\n    ???+ Input\r\n        ```sample\r\n        6 6 1\r\n        1 2\r\n        2 3\r\n        3 4\r\n        4 5\r\n        5 6\r\n        1 3\r\n        ```\r\n    ??? success Output\r\n        ```sample\r\n        0\r\n        1\r\n        1\r\n        2\r\n        3\r\n        4\r\n        ```","points":100.0,"partial":true,"time_limit":1.0,"memory_limit":262144,"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}}