Editorial for El microchip y las mediciones


Remember to use this editorial only when stuck, and not to copy-paste code from it. Please be respectful to the problem author and editorialist.
Submitting an official solution before solving the problem yourself is a bannable offence.

Author: humbertoyusta

Subtarea 1: Aqui la idea es generar todas las matrices posibles, y ver cuales son validas. (solo las validas y quiza algunas malas, si las generas todas debe dar TLE ya que son 2^25 cosas que probar y cada una se prueba en O(n^2) ). Para hacerlo se debe hacer algun backtracking o algo por el estilo.

Subtarea 2: Esta subtarea esta basicamente para si tienes la solucion, pero te enredas en algo de implementacion y te queda un O(n^2) o algo asi.

Subtarea 3: La idea de este problema se basa en lo siguiente, que pasa si fijamos una fila?, si tenemos una matriz de 3x4 y fijamos la fila 1, veamos que pasa:

--+-

++-+

--+-

Se puede notar que si fijamos la primera fila, la segunda tiene que ser obligatoriamente igual pero sustituyendo los + por - y los - por +. Es facil notar ahora que si fijamos una fila pasa lo mismo. Entonces si fijamos una fila, o una columna se obtiene toda la matriz, pero hay que tener mucho cuidado con las matrices que se formen tanto por fijar una fila, como por fijar una columna, si pensamos un poco, solo existen dos de estas matrices y son:

-+-+ (1a)

+-+-

-+-+

y

+-+- (1b)

-+-+

+-+-

Con esto podemos ver que la cantidad de matrices validas sin fijar nada es 2^n+2^m-2.

Ahora cuando nos piden fijar un punto, lo fijamos en la fila y en la columna(lo corremos a la fila 1 o a la columna 1 en cada caso), y si en una fila o columna tenemos que una posicion tiene que ser + y - a la vez la solucion es 0, de lo contrario la solucion es 2^(cantidad de columnas sin fijar) + 2^(cantidad de filas sin fijar) - es_posible_hacer_1 - es_posible_hacer_2.

es_posible_hacer_1 es si se puede hacer la matriz (1a), lo cual se puede chequear facilmente, es_posible_hacer_2 es igual pero con la matriz (1b). Por ejemplo si en una matriz de 3 x 4 nos hacen las siguientes mediciones:

????

?-??

??+?

Ya sabemos que si fijamos la primera fila, el segundo elemento tiene que ser +, y el tercero tambien, y si fijamos la primera columna, el segundo tiene que ser un + y el tercero tambien.


Comments

There are no comments at the moment.