zoukankan      html  css  js  c++  java
  • 【构造】【CF1327-C】Game with Chips

    【题意】

      给定n,m的方格大小,给定k个起始点,和k个终点。

      请问通过上下左右,每个起始点都按对应方向移动,如果碰到墙则留在原地,请问经历多少次才能至少遇到k个终点至少一次。

    【题解】

      由于限定的次数上限很大,足以我们逐个遍历每一个点。

      首先把所有点都移动到左上角,然后按每一行走蛇形遍历到右下角。

    【具体代码】

     1 #include<cstdio>
     2 #include<cstdlib>
     3 #include<cstring>
     4 #include<algorithm>
     5 #include<iostream>
     6 using namespace std;
     7 typedef long long ll ;
     8 const ll mod = 1e9 + 7 ;
     9 const int N = 1e3 + 10;
    10 int main()
    11 {
    12     int n,m,k;
    13     scanf("%d%d%d",&n,&m,&k);
    14     for( int i = 1 ,x,y; i <= 2 * k ; i ++ ){
    15         scanf("%*d%*d");
    16     }
    17  
    18     printf("%d
    ",n*m+n+m-2);
    19     //返回左上角
    20     for( int i = 0 ; i < n-1 ; i++ )    printf("U") ;
    21     for( int i = 0 ; i < m-1 ; i++ )    printf("L") ;
    22  
    23     //蛇形遍历所有位置
    24     for( int i = 0 ; i < n; i++){
    25         for( int j = 0 ; j < m - 1; j++ ){
    26             printf("%c",i%2?'L':'R');
    27         }
    28         printf("D");
    29     }
    30     printf("
    ");
    31     return 0;
    32 }
    View Code
  • 相关阅读:
    Uva 10935 Throwing cards away I
    Uva 3226 Symmetry
    eclipse @ 注释为何一写就报错
    2015省赛小感想
    Zoj 3842 Beauty of Array
    fedora 设置命令别名
    Uva220 Othello
    工作小技巧积累
    SSL介绍与Java实例
    一个完整的SSL连接建立过程
  • 原文地址:https://www.cnblogs.com/Osea/p/12602900.html
Copyright © 2011-2022 走看看