- Time limit: 1.00 s
- Memory limit: 512 MB
A company has employees and there are tasks that need to be done. We know for each employee the cost of carrying out each task. Every employee should be assigned to exactly one task. What is the minimum total cost if we assign the tasks optimally and how could they be assigned?
Input
The first input line has one integer : the number of employees and the number of tasks that need to be done.
After this, there are lines each consisting of integers. The th line consists of integers : the cost of each task when it is assigned to the th employee.
Output
First print the minimum total cost.
Then print lines each consisting of two integers and : you assign the th task to the th employee.
If there are multiple solutions you can print any of them.
Constraints
Example
Input:
4 17 8 16 9 7 15 12 19 6 9 10 11 14 7 13 10
Output:
33 1 4 2 1 3 3 4 2
Explanation: The minimum total cost is . We can reach this by assigning employee 1 task 4, employee 2 task 1, employee 3 task 3 and employee 4 task 2. This will cost .