zoukankan      html  css  js  c++  java
  • HNUST-1681 机器人走格子(找规律)

    1681: 机器人走格子

    时间限制: 1 Sec  内存限制: 128 MB
    提交: 244  解决: 58
    [提交][状态][讨论版]

    题目描述

    一个长X宽Y的棋盘,有XY个格子。将机器人放在某个格子中,机器人可以沿上、下、左、右四个方向走一步到相邻的格子中,但不会越过棋盘边界。
    问机器人要经过所有的格子至少一次并最终回到起点最少需要多少步?规则允许机器人多次走过同一个格子。对于X=Y=1的情形,我们认为答案为0。

    输入

     
    输入数据的第一行是一个整数T(0<T<=50),测试数据的组数。
    每组测试数据的第一行是两个整数X和Y(0<X,Y<=100)。随后有Y行X个字符,字符‘C’表示格子,‘S’表示起点。

    输出

    对于每一组测试数据,输出需要的最少步数。

    样例输入

    1
    4 4
    CCCC
    CCCC
    CSCC
    CCCC
    

    样例输出

    16
    #include<iostream>
    #include<cstring>
    #include<cstdio>
    const int N = 100 + 5;
    char mat[N];
     
    int main(){
        int T;
        scanf("%d", &T);
        while(T --){
            int n, m;
            scanf("%d %d", &n, &m);
            for(int i = 0; i < m; i++) scanf("%s", mat);
            if(n == 1 && m == 1) puts("0");
            else if(n == 1) printf("%d
    ", 2 * (m - 1));
            else if(m == 1) printf("%d
    ", 2 * (n - 1));
            else if(n % 2 == 0 || m % 2 == 0) printf("%d
    ", n * m);
            else printf("%d
    ", n * m + 1);
        }
        return 0;
    }
     
     
  • 相关阅读:
    网络面试题-1
    CentOS7下配置Squid代理
    docker使用harbor搭建私有仓库
    docker 基础命令
    docker要隔离的的6种namespace
    python 列表中的数字转为字符串
    python 排列组合
    filter函数
    Pytest配置文件声明自定义用例标识
    pytest参数化
  • 原文地址:https://www.cnblogs.com/Pretty9/p/7406713.html
Copyright © 2011-2022 走看看