codeforces-1327C-juegos con chips
Portal: https://codeforces.com/contest/1327/problem/C
El significado de problemas: hay N * m una placa de circuito, para darle el punto actual k a, y los puntos k objetivo, cada uno se puede mover arriba y abajo sobre (todo el movimiento actual de cada puntos móviles) (si el chip está situado al lado del revestimiento , y la acción seleccionada Petya moverlo hacia la pared, el chip permanecerá en su posición actual), de manera que todo el punto de corriente a través de al menos un cierto punto, el rango de movimiento de no más de 2 * n * m, cómo ir
Todos los puntos se siguen cada movimiento movimiento no es fuerza muy ignorante? Pasar por el punto de destino dado? Ver rango de movimiento dado, 2 * n * m de esa manera, los puntos actuales y de destino Piyong no, un rincón empujó todos los puntos, en el lado final de la carrera de serpentina, el número de movimientos n * m + n + m-3, dispersa bar San Leba, que muestran el problema también
1 #include <bits / STDC ++ h.> 2 usando espacio de nombres std; 3 #define ll largo largo 4 const int maxN = 1E6 + 10 ; 5 const int mod = 1e9 + 7 ; 6 const int inf = 0x3f3f3f3f ; 7 int mp [ 209 ] [ 209 ]; 8 int main () 9 { 10 int t, n, m, k, x, y; 11 12 scanf ( " % d% d% d ", y n, y m, y k); 13 para ( int i = 1 ; i <= 2 * k; i ++ ) 14 { 15 scanf ( " % d% d " , y x, y y); 16 } 17 printf ( " % d \ n " , n * m + n + m- 3 ); 18 para ( int i = 1 ; i <n; i ++) printf ( " U " ); 19 para ( int i = 1 ; i <m; i ++) printf ( "L " ); 20 para ( int i = 1 ; i <= n; i ++ ) 21 { 22 si (% i 2 ) 23 { 24 para ( int j = 1 ; j <m; j ++) printf ( " R " ) ; 25 } 26 más 27 { 28 para ( int j = 1 ; j <m; j ++) printf ( " L " ); 29 } 30 Si (i =! n) 31 printf ( " D " ); 32 } 33 printf ( " \ n " ); 34 de retorno 0 ; 35 }