< '0' || c > '9') c = in.read();while (c >='0' && c <='9') {n = n * 10 + (c & 0xf);c = in.read();}return n;}}
因为数据规模很小,因此暴搜枝剪后也能在约定时间内拿到结果
还可以写一种实现简单的方法效验一下
import java.io.IOException;import java.io.InputStream;import java.io.BufferedReader;import java.io.InputStreamReader;import java.util.ArrayList;import java.util.Arrays;import java.util.List;import java.util.StringTokenizer;public class Main {static int n, m, cnt;public static void main(String[] args) {InputReader in = new InputReader(System.in);List
#I 大胖子走迷宫
时间限制: 1.0s 内存限制: 512.0MB 本题总分:25 分
问题描述
小明是个大胖子,或者说是个大大胖子,如果说正常人占用 1 × 1 的面积,小明要占用 5 × 5 的面积 。由于小明太胖了,所以他行动起来很不方便 。当玩一些游戏时,小明相比小伙伴就吃亏很多 。
小明的朋友们制定了一个计划,帮助小明减肥 。计划的主要内容是带小明玩一些游戏,让小明在游戏中运动消耗脂肪 。走迷宫是计划中的重要环节 。
朋友们设计了一个迷宫,迷宫可以看成是一个由 n × n 个方阵组成的方阵,正常人每次占用方阵中 1 × 1 的区域,而小明要占用 5 × 5 的区域 。小明的位置定义为小明最正中的一个方格 。迷宫四周都有障碍物 。
为了方便小明,朋友们把迷宫的起点设置在了第 3 行第 3 列,终点设置在了第 n-2 行第 n-2 列 。
小明在时刻 0 出发,每单位时间可以向当前位置的上、下、左、右移动单位 1 的距离,也可以停留在原地不动 。小明走迷宫走得很辛苦,如果他在迷宫里面待的时间很长,则由于消耗了很多脂肪,他会在时刻 k 变成一个胖子,只占用 3 × 3 的区域 。如果待的时间更长,他会在时刻 2k 变成一个正常人,只占用 1 × 1 的区域 。注意,当小明变瘦时迷宫的起点和终点不变 。
请问,小明最少多长时间能走到迷宫的终点 。注意,小明走到终点时可能变瘦了也可能没有变瘦 。
输入格式
输入的第一行包含两个整数 n, k 。
接下来 n 行,每行一个由 n 个字符组成的字符串,字符为 + 表示为空地,
字符为 * 表示为阻碍物 。
输出格式
输出一个整数,表示答案 。
测试样例1
Input:9 5+++++++++++++++++++++++++++++++++++++++++++++***+*****+++++++++++++++++++++++++++Output:16
- 大话西游2组队飞行符能用多少次
- java高校信息管理系统,java高校机房预约管理系统
- 微信小程序下拉菜单组件实现
- 微信小程序中 Vant DropdownMenu 下拉菜单组件穿透问题
- java设计模式之 代理模式
- Web Components 小程序组件实现原理
- [附源码]Java计算机毕业设计SSM翻转课堂微视频管理系统
- nablet Elements released处理视频的组件
- java null
- Object javascript基础--对象封装