Alex Tew é um
estudante britânico de 21 anos sem meios financeiros para poder
continuar os seus estudos na Universidade. Para conseguir angariar o
dinheiro necessário teve um ideia pioneira e muito inovadora:
resolveu criar um página onde colocava à venda 1,000,000 de pixels,
ao preço de 1 dólar cada um. Quem quiser contribuir, compra um bloco
rectangular de pixels e pode colocar lá a imagem que quiser,
publicitando por exemplo uma empresa. Alex compromete-se a usar uma
parte do dinheiro para deixar a página online vários anos e em troca
quem compra os pixels pode ganhar o seu espaço num site que fica
para história da internet. Esta simples ideia correu o mundo e em
pouco tempo Alex conseguiu o ambicionado milhão de dólares.
Procurando imitar este sucesso, decidiste também colocar uma série de pixels à venda. A tua página terá à venda um enorme rectângulo de pixeis inicialmente vazios e num dado momento qualquer pessoa pode comprar um rectângulo de pixels adjacentes, desde ainda estejam todos livres. Para ajudar, queres automatizar o processo de, dadas as dimensões do rectângulo a comprar, sugerir um espaço livre. A ideia é mostrar ao comprador o espaço o mais possível em cima e à esquerda onde cabe o rectângulo de pixels a comprar.
Imagina por exemplo que estás a vender um rectângulo de 10 linhas por 15 colunas e que já vendeste os três rectangulos coloridos da figura:
Se alguém quiser comprar um quadrado de lado 4, existem vários sítios para o colocar. Se considerarmos, como pedido, que devemos escolher o que está mais acima e, em caso de empate, o que fica mais à esquerda, vemos que a sugestão seria colocá-lo na posição indicada a cinzento:
Já se o rectângulo a comprar fosse de 6 linhas por 7 colunas, seria impossível colocá-lo.
Será que consegues criar um programa para ajudar neste processo de decisão?
Dado as dimensões inicias de um rectângulo global de pixels L por C pixels (indicando o número de linhas e colunas), dadas as dimensões e posições de R rectângulos mais pequenos (já comprados) e dadas as dimensões NL por NC pixels do rectângulo a comprar, a tua tarefa é descobrir se existe um sítio livre onde é possível colocar o rectângulo a comprar (sem o rodar). Caso seja possível, deves indicar qual o sítio mais acima (e em caso de empate o mais à esquerda) onde o deves colocar.
Na primeira linha do input vem um único número inteiro K indicando o número de casos a considerar (1 ≤K≤10).
Seguem-se exactamente K casos de teste, cada um constituído pelas seguintes linhas:
Para esclarecer qualquer dúvida relativa ao input nota que o primeiro caso de exemplo corresponde às figura mostradas na introdução do problema.
O output é constituído exactamente por K linhas, cada uma contendo a resposta para o respectivo caso (na mesma ordem em que aparecem no input).
Cada uma das respostas deve conter:
Para um conjunto de casos de teste valendo 60% dos pontos, o
rectângulo global tem dimensões inferiores ou iguais a 1000x1000.
3 10 15 4 4 3 2 2 5 4 6 8 8 12 2 9 3 13 10 15 6 7 3 2 2 5 4 6 8 8 12 2 9 3 13 10 10 2 2 2 1 1 3 3 1 4 1 10
1 5 Impossivel 2 4