{"code":"nc2_dfs_1","name":"Đường đi theo từ điển","description":"Cho một đồ thị có hướng \\(G = (V, E)\\) gồm \\(N\\) đỉnh và \\(M\\) cạnh.  \r\nMột **đường đi** từ đỉnh \\(s\\) đến đỉnh \\(t\\) là một dãy các đỉnh  \r\n\\(P = \\{P_1, P_2, \\ldots, P_x\\}\\) khác nhau sao cho \\((P_{i-1}, P_i) \\in E\\).\r\n\r\nYêu cầu: Cho hai đỉnh \\(s\\) và \\(t\\). Hãy tìm **đường đi có thứ tự từ điển ngắn nhất** từ \\(s\\) đến \\(t\\).\r\n\r\n### Input\r\n\r\n- Dòng đầu tiên chứa 4 số nguyên dương \\(n, m, s, t\\)  \r\n  \\((n \\le 10^5, m \\le 10^6; 1 \\le s, t \\le n)\\).\r\n- \\(m\\) dòng tiếp theo, mỗi dòng chứa 2 số nguyên dương \\(u, v\\),  \r\n  mô tả cạnh đi từ \\(u\\) đến \\(v\\) \\((1 \\le u, v \\le n)\\).\r\n\r\n### Output\r\n\r\n- In ra dãy số nguyên là đường đi có thứ tự từ điển nhỏ nhất từ \\(s\\) đến \\(t\\).  \r\n- Dữ liệu đảm bảo luôn tồn tại đường đi thoả mãn.\r\n\r\n\r\n### Example\r\n!!! question \"Test\"\r\n    ???+ Input\r\n        ```sample\r\n        4 5 1 4\r\n        1 4\r\n        1 3\r\n        1 2\r\n        2 3\r\n        3 4\r\n        ```\r\n    ??? success Output\r\n        ```sample\r\n        1 2 3 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}}