425. Control function
Time limit per test: 1 second(s)
Memory limit: 262144 kilobytes
input: standard
output: standard
A matrix
T of non-negative integers with
n rows and
m columns is called a
control matrix when its first row is different from all other rows. Formally speaking,
T1j ≠
Tij.
A function
f from non-negative integers to non-negative integers is called a
control function for the given control matrix
T when the matrix
f(
T) obtained by applying
f to every element of
T is also a control matrix. Formally speaking,
f(
T1j) ≠
f(
Tij).
Find a control function with all values not exceeding 50 for the given control matrix
T.
Input
The first line of the input file contains two integers
n and
m (1 ≤
n,
m ≤ 1000). The next
n lines contain
m integers each, representing the matrix
Tij (

). It is guaranteed that the matrix
T is a control matrix.
Output
Output "
Yes" (without quotes) to the first line of the output file if such a function exists, and "
No" (without quotes) otherwise. If the answer is positive, then output the function via "
key -> value" pairs (without quotes). Order keys in increasing order. All different numbers from matrix
T must appear as a key exactly once, and no other keys should be printed.
Example(s)
sample input | sample output |
1 5
1 2 3 4 5
|
Yes
1 -> 0
2 -> 0
3 -> 0
4 -> 0
5 -> 0
|
sample input | sample output |
2 2
1 2
1 3
|
Yes
1 -> 1
2 -> 1
3 -> 0
|
sample input | sample output |
4 2
0 2
4 5
7 6
3 1
|
Yes
0 -> 1
1 -> 0
2 -> 1
3 -> 0
4 -> 1
5 -> 0
6 -> 1
7 -> 0
|