Considereu un tauler d’escacs rectangular sobre el qual s’han disposat diversos alfils. Un alfil n’amenaça un altre si tots dos es troben a la mateixa diagonal i no n’hi ha cap altre entre ells dos. Es vol conèixer quines són totes les amenaces entre alfils.
Per exemple, considereu el tauler següent amb 4 files i 5 columnes:
(6,5.5)
(1,1)(1,0)6(0,0)(0,4) (1,1)(0,1)5(0,0)(5,0)
(0.5 , 1.5 )4 (0.5 , 2.5 )3 (0.5 , 3.5 )2 (0.5 , 4.5 )1
(1.5 ,0.5 )1 (2.5 ,0.5 )2 (3.5 ,0.5 )3 (4.5 ,0.5 )4 (5.5 ,0.5 )5
(1.5 ,1.5 )X (3.5 ,3.5 )X (4.5 ,2.5 )X (4.5 ,4.5 )X (5.5 ,2.5 )X
L’alfil de la posició (3,5) no té amenaces. L’alfil de la posició (4,1) amenaça el de la posició (2,3), i cap altre. L’alfil de la posició (2,3) amenaça els de les posicions (4,1), (1,4) i (3,4). El conjunt de totes les amenaces és:
Feu un programa que llegeixi un tauler amb alfils i escrigui totes les seves amenaces.
L’entrada comença amb el nombre de files i el nombre de columnes del tauler (dos enters estrictament positius). A continuació ve un tauler de la mida indicada, amb caràcters ‘|X|’ per marcar els alfils i punts per marcar les caselles buides.
Per a cada amenaça d’un alfil a la posició amb un altre alfil a la posició , cal escriure una línia amb el text “|(||,||)<->(||,||)|”. Les posicions es numeren de dalt a baix i d’esquerra a dreta, començant per 1.
L’ordre en què escriviu les línies és irrellevant. El Jutge donarà per bona qualsevol sortida que contingui totes les amenaces correctes, amb independència del seu ordre.
Input
4 5 ...X. ..X.. ...XX X....
Output
(1,4)<->(2,3) (2,3)<->(3,4) (2,3)<->(4,1) (2,3)<->(1,4) (3,4)<->(2,3) (4,1)<->(2,3)
Input
3 3 XXX XXX XXX
Output
(1,1)<->(2,2) (1,2)<->(2,3) (1,2)<->(2,1) (1,3)<->(2,2) (2,1)<->(3,2) (2,1)<->(1,2) (2,2)<->(3,3) (2,2)<->(3,1) (2,2)<->(1,3) (2,2)<->(1,1) (2,3)<->(3,2) (2,3)<->(1,2) (3,1)<->(2,2) (3,2)<->(2,3) (3,2)<->(2,1) (3,3)<->(2,2)
Input
6 11 .....X..... ........... ........... ........... ........... XXXXXXXXXXX
Output
(1,6)<->(6,11) (1,6)<->(6,1) (6,1)<->(1,6) (6,11)<->(1,6)
Input
1 1 .
Output