Quantcast
Channel: CodeChef Discuss - latest questions
Viewing all articles
Browse latest Browse all 39796

Fill the rectangles with maximum "important" values.

$
0
0

We have a rectangle with n rows and m columns filled with numbers from 1 to nm. Cell (i,j) of the rectangle is important iff: i = 1 and j = 1 (or) *there is an important cell (a,b) such that (a,b) is a neighbor of (i,j) and the number on (i,j) is greater than number on cell (a,b) and all of (a,b)'s neighbors except for ( (i,j) itself

Two cells are considered to be neighbors if they share a common edge between them. Unfortunately the number in some of the cells has been erased. We want to write a number to those cells such that the resultant rectangle has all the numbers between 1 to nm and it contains as many important cells as possible. In case there are several ways to do that, we are interested with the rectangle which is lexicographically smallest. A table is lexicographically smaller that the other if the string of its row-major view is lexicographically smaller than the other. Input: The first line of the input contains two integers n and m, Each of the next n lines contains m tokens. Each token is either an integer between 1 and nm or '?'. Output: Print the maximum number of important cells that can be obtained in the first line of the output and print the rectangle in the next n lines.

Constraints: 1 <=n,m <=6

Sample input #00: 2 3 2 ? ? ? ? 3

Sample output #00: 3 2 1 4 5 6 3

Sample input #01: 6 6 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

Sample output #02: 24 1 2 3 13 14 15 4 6 8 10 11 16 5 7 9 12 19 17 28 26 24 22 20 18 29 27 25 23 21 36 30 31 32 33 34 35


Viewing all articles
Browse latest Browse all 39796

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>