EOJ 3260 袋鼠妈妈找孩子
暴力搜索。
主要目的就是找到任意一条路径,使得路径长度大于等于$k+1$,写个爆搜发现很快能出解。判断某点是否可走,需要看四周有没有已经走过的点的$dis$比这个点的$dis$小$2$或者$2$以上。
#include <cstdio>
#include <cmath>
#include <cstring>
#include <algorithm>
using namespace std; int dis[10][10];
int dir[4][2]=
{
{1,0},
{-1,0},
{0,1},
{0,-1}
};
int n,m,sx,sy,k,suc; bool ok(int x,int y)
{
if(x>=1&&x<=n&&y>=1&&y<=m) return 1;
return 0;
} bool check(int x,int y)
{
for(int i=0;i<4;i++)
{
int tx = x + dir[i][0];
int ty = y + dir[i][1];
if(ok(tx,ty)==0) continue;
if(dis[tx][ty] == 0) continue;
if(dis[x][y] - dis[tx][ty]>1) return 0;
}
return 1;
} void dfs(int x,int y,int dep)
{
//printf("%d %d %d\n",x,y,dep);
if(check(x,y)==0) return ; if(x==sx&&y==sy)
{
if(dep-1<k) return ;
suc=1; return ;
} for(int i=0;i<4;i++)
{
int tx = x + dir[i][0];
int ty = y + dir[i][1];
if(ok(tx,ty)==0) continue;
if(dis[tx][ty]) continue; dis[tx][ty] = dep + 1;
dfs(tx,ty,dep+1); if(suc) return ;
dis[tx][ty] = 0;
}
} int main()
{
scanf("%d%d",&n,&m);
scanf("%d%d%d",&sx,&sy,&k); dis[1][1] = 1;
dfs(1,1,1); for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
{
if(dis[i][j]) printf(".");
else printf("*");
}
printf("\n");
} return 0;
}
EOJ 3260 袋鼠妈妈找孩子的更多相关文章
- ECNU 3260 - 袋鼠妈妈找孩子
题目链接:http://acm.ecnu.edu.cn/problem/3260/ Time limit per test: 1.5 seconds Time limit all tests: 10. ...
- ECNU 3260 袋鼠妈妈找孩子(dfs)
链接:http://acm.ecnu.edu.cn/problem/3260/ 题意: 给出一个x,y,k.求从左上角到(x,y)最短路径不少于k而且最快到达(x,y)的迷宫.(迷宫有多个 输出其中一 ...
- [automator篇][9] 列表,找孩子
private boolean ClickByCollInfo(int CLICK, String classname, String id, String text) { UiSelector ui ...
- 51nod - 1420 - 数袋鼠好有趣 - 贪心 - 二分
https://www.51nod.com/Challenge/Problem.html#!#problemId=1420 一开始乱搞了一发,每个袋鼠二分找最小的能放它的,然后二分的范围从下一个开始保 ...
- 【日语】日语单词N3_N4_N5
日语单词N3_N4_N5 单 词 讲 解 あ行单词 ああ:0[副]那样.那种 例句:ああ言うことはしないほうがいい.那样的事情最好不做. 電車の窓からごみを棄てているああ言うことはしないほうがいい. ...
- 日语单词N3_N4_N5
单 词 讲 解 あ行单词 ああ:0[副]那样.那种 例句:ああ言うことはしないほうがいい.那样的事情最好不做. 電車の窓からごみを棄てているああ言うことはしないほうがいい. 挨拶(あいさつ):① 寒暄 ...
- Objective-c 代理模式(delegate)
Objective-c 代理模式(delegate) (2012-07-31 22:04:39) 转载▼ 标签: 杂谈 分类: iOS Objective-c 代理模式(delegate) 一 ...
- 银行HR:寒门再难出贵子
银行HR:寒门再难出贵子来源:金融行业网 2013 年 8 月 6 日 来源:天涯社区 作者:永乐大帝二世 本文是一位银行的HR写的,他工作了10年,接待了一群到银行实习的实习生,然后观察他们发生的好 ...
- English-旅游英语及情景对话
1.旅游英语:预订机票情景对话及常用句型 目前,越来越多的人都选择以飞机为出行方式.但是如何用一口流利的英语订机票呢?这里我们替你总结了一些情景对话,还有一些常用的句型.大家都来学一学吧~A:Good ...
随机推荐
- nova-api源码分析(WSGI server的创建及启动)
源码版本:H版 一.前奏 nova api本身作为一个WSGI服务器,对外提供HTTP请求服务,对内调用nova的其他模块响应相应的HTTP请求.分为两大部分,一是服务器本身的启动与运行,一是加载的a ...
- expect 批量增加用户及配置密码
start.sh #!/bin/bash password="111111" username="test" if [ $# == 1 ] then usern ...
- Ajax-更新
ajax是与服务器进行(异步/同步)交互的技术之一交互就是对服务器一种访问ajax对服务器进行交互时页面不刷新ajax的语言载体是JS 比如我在百度输入个东西 自动弹出信息像和一些搜索字体相关的页面标 ...
- 2.redis设计与实现--链表
1.链表节点: 2.链表: 3.总结
- 1.redis设计与实现--简单动态字符串
1.redis没有使用c语言的字符串表示,而是使用更加适合自己的SDS(simple dynamic string),简单动态字符串,结构如下: 2.sys与c字符串的对比: 3.总结: redis采 ...
- NOIP模拟赛16
NOIP2017金秋冲刺训练营杯联赛模拟大奖赛第一轮Day2 期望得分:100+100+ =200+ 实际得分:100+40+70=210 T1天天寄快递 直接模拟,代码丢了...... T2天天和不 ...
- 「LibreOJ β Round #4」子集
https://loj.ac/problem/526 题目描述 qmqmqm有一个长为 n 的数列 a1,a2,……,an,你需要选择集合{1,2,……,n}的一个子集,使得这个子集中任意两个元素 i ...
- PHP扩展--vld查看opcode代码
vld安装 wget http://pecl.php.net/get/vld-0.13.0.tgz tar zxvf vld-0.13.0.tgz cd vld-0.13.0 /usr/local/p ...
- Plan
相册Gallery 标签页 Slide 播放器 Dialog 放大镜 http://sc.chinaz.com/info/130123265570.htm
- [Swing]树形结构的实现
一般步骤: 1.建立根节点 private DefaultMutableTreeNode root = new DefaultMutableTreeNode("根节点"); 2.建 ...