Lexicographic Kth path
Practice
4.5 (2 votes)
Counting and arrangements
Dynamic programming
Algorithms
Medium Hard
Problem
88% Success 774 Attempts 50 Points 1s Time Limit 256MB Memory 1024 KB Max Code

You have been given an undirected graph containing of N nodes and M edges. Each of the edges have a lowercase character('a'-'z') written on them. Hence, each path from 1 to N can be described with a string consisting of characters coming on the path. You have to find lexicographic Kth shortest path from 1 to N in this graph.

INPUT:
First Line of input consists of three integers N ,M and K. Next M lines consists of two integers u and v and a character c denoting an edge between u and v with label c .

OUTPUT:
Print lexicographical Kth shortest path in this graph from 1 to N. If total number of shortest paths are less than K, print -1.

CONSTRAINTS:
2 ≤ N ≤ 105
N-1 ≤ M ≤ 106
1 ≤ K ≤ 1018
1 ≤ u,v ≤ N
c will be a lower case alphabet ('a'-'z').
Graph will not contain self loops and parallel edges. 1 and N will lie in same connected components.

Sample Input
7 8 4
1 2 a
1 3 a
2 4 a
3 4 a
4 5 a
4 6 a
5 7 b
6 7 c
Sample Output
aaac
Explanation

All the 4 path strings from 1 to 7 are aaab, aaab, aaac and aaac. Lexicographic 4th one will be aaac.

Code Editor

Please login to use the editor

You need to be logged in to access the code editor

Loading...

Submissions
Please login to view your submissions
Similar Problems
Points:50
11 votes
Tags:
Medium-Hard
Points:50
1 votes
Tags:
CombinatoricsDynamic ProgrammingAlgorithmsApprovedMedium-Hard
Points:50
Tags:
Medium-HardMedium-Hard
Editorial

Login to unlock the editorial