中国海洋大学第四届朗讯杯高级组 A 2718 Rocky(模拟)
题目:http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=2718
题意:优先直走,右 左 后。。。。
思路:
我定义的朝向 已经 d[]的先后次序。。。。。
| 3 | ||
| 2 | 1 | |
| 4 |
#include <cstring>
#include <cstdio>
using namespace std; int dx[]={,,-,,};
int dy[]={,,,,-};
struct node
{
int x,y,tow,step;
}pos,before;
int main()
{
int i,col,row,r;
int G[][];
int x,y,sx,sy,f,count=;
while(~scanf("%d%d%d",&col,&row,&r)&&(col||row||r))
{
memset(G,,sizeof(G));
for(i=; i<r; i++)
{
scanf("%d%d",&x,&y);
G[x][y]=;
}
scanf("%d%d",&sx,&sy);
if(sx==)
f=;
else if(sx==col)
f=;
else if(sy==)
f=;
else if(sy==row)
f=;
pos.step=; pos.tow=f;
pos.x=sx; pos.y=sy;
for(i=; ;i++)
{
if(pos.tow==)
{
if(pos.x>=col)
break;
if(G[pos.x+dx[]][pos.y+dy[]]==)
{
pos.x=pos.x+dx[];
pos.y=pos.y+dy[];
pos.step++;
}
else if(G[pos.x+dx[]][pos.y+dy[]]==)
{
pos.x=pos.x+dx[];
pos.y=pos.y+dy[];
pos.step++;
pos.tow=;
}
else if(G[pos.x+dx[]][pos.y+dy[]]==)
{
pos.x=pos.x+dx[];
pos.y=pos.y+dy[];
pos.step++;
pos.tow=;
}
else if(G[pos.x+dx[]][pos.y+dy[]]==)
{
pos.x=pos.x+dx[];
pos.y=pos.y+dy[];
pos.step++;
pos.tow=;
}
}
else if(pos.tow==)
{
if(pos.x<=)
break;
if(G[pos.x+dx[]][pos.y+dy[]]==)
{
pos.x=pos.x+dx[];
pos.y=pos.y+dy[];
pos.step++;
}
else if(G[pos.x+dx[]][pos.y+dy[]]==)
{
pos.x=pos.x+dx[];
pos.y=pos.y+dy[];
pos.step++;
pos.tow=;
}
else if(G[pos.x+dx[]][pos.y+dy[]]==)
{
pos.x=pos.x+dx[];
pos.y=pos.y+dy[];
pos.step++;
pos.tow=;
}
else if(G[pos.x+dx[]][pos.y+dy[]]==)
{
pos.x=pos.x+dx[];
pos.y=pos.y+dy[];
pos.step++;
pos.tow=;
}
}
else if(pos.tow==)
{
if(pos.y>=row)
break;
if(G[pos.x+dx[]][pos.y+dy[]]==)
{
pos.x=pos.x+dx[];
pos.y=pos.y+dy[];
pos.step++;
}
else if(G[pos.x+dx[]][pos.y+dy[]]==)
{
pos.x=pos.x+dx[];
pos.y=pos.y+dy[];
pos.step++;
pos.tow=;
}
else if(G[pos.x+dx[]][pos.y+dy[]]==)
{
pos.x=pos.x+dx[];
pos.y=pos.y+dy[];
pos.step++;
pos.tow=;
}
else if(G[pos.x+dx[]][pos.y+dy[]]==)
{
pos.x=pos.x+dx[];
pos.y=pos.y+dy[];
pos.step++;
pos.tow=;
}
}
else if(pos.tow==)
{
if(pos.y<=)
break;
if(G[pos.x+dx[]][pos.y+dy[]]==)
{
pos.x=pos.x+dx[];
pos.y=pos.y+dy[];
pos.step++;
}
else if(G[pos.x+dx[]][pos.y+dy[]]==)
{
pos.x=pos.x+dx[];
pos.y=pos.y+dy[];
pos.step++;
pos.tow=;
}
else if(G[pos.x+dx[]][pos.y+dy[]]==)
{
pos.x=pos.x+dx[];
pos.y=pos.y+dy[];
pos.step++;
pos.tow=;
}
else if(G[pos.x+dx[]][pos.y+dy[]]==)
{
pos.x=pos.x+dx[];
pos.y=pos.y+dy[];
pos.step++;
pos.tow=;
}
}
if(pos.x>=&&pos.x<=col&&pos.y>=&&pos.y<=row)
{
before.x=pos.x; before.y=pos.y;
}
}
printf("Case %d: ",count++);
if(pos.x>=&&pos.x<=col&&pos.y>=&&pos.y<=row)
printf("%d %d %d\n",pos.x,pos.y,pos.step);
else
printf("%d %d %d\n",before.x,before.y,pos.step-);
}
return ;
}
中国海洋大学第四届朗讯杯高级组 A 2718 Rocky(模拟)的更多相关文章
- 中国海洋大学第四届朗讯杯高级组 Cash Cow(模拟)
题目:http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=2721 题意: 给定n个左标,跟那n个坐标 ...
- 中国海洋大学第四届朗讯杯高级组 I Cuckoo for Hashing
http://acm.sdut.edu.cn/sdutoj/showproblem.php?pid=2719&cid=1203 题意 :意思就是哈希来的,具体大意就是说有两个哈希表,然后有这样 ...
- 中国海洋大学第四届朗讯杯高级组 A Rocky
http://acm.sdut.edu.cn/sdutoj/showproblem.php?pid=2718&cid=1203 题意:给你一个m乘n的格子阵,从一边进去,直线往前走,如果前边有 ...
- 腾讯云 安全组配置及与MySQL 远程登录失败原因浅析
前言,知道自己腾讯云服务器安全组配置并在安全组里开放了所有端口的用户可以粗略的看看下边的内容,否则就仔细看看吧. 因为有学习及业务需要,我要在腾讯云上安装了CentOS7.2版本的服务器上安装MySQ ...
- 第四届蓝桥杯C++B组省赛
1.高斯日记 2.马虎的算式 3.第39级台阶 4.黄金连分数 5.前缀判断 6.三部排序 7.错误票据 8.翻硬币 9.带分数 10.连号区间数
- 第四届蓝桥杯C++B组国(决)赛真题
解题代码部分来自网友,如果有不对的地方,欢迎各位大佬评论 题目1.猜灯谜 A 村的元宵节灯会上有一迷题: 请猜谜 * 请猜谜 = 请边赏灯边猜 小明想,一定是每个汉字代表一个数字,不同的汉字代表不同的 ...
- CF 3-6 2级组 D题 STRESSFUL TRAINING 紧张的比赛
题目大概是这样的: 给出一个数列a[n] ,对于每一个数 a [i] 来说 都会在 T - - 时 -= b[i] 每个数都在任何时刻不能小于0 你可以在每次T - - 之前时给 一 个 a[i] + ...
- [2020年10月28日普级组]1405.小B浇花
区 间 和 的 和 区间和的和 区间和的和 题目解析 就直接模拟,从最低的花的高度向最高的花的高度枚举,如果当循环变量的值到达了顶峰,但还有花的数量大于2的,就把循环上线加一(所以数组要开大些) Co ...
- [2020年10月28日普级组]1406.SMRTFUN
S M R T F U N SMRTFUN SMRTFUN 题目描述 "又肥又温顺,又大又笨,他们看起来那么傻,而且也不有趣--" 这些牛想要证明,他们是既有趣,又聪明的.为了这样 ...
随机推荐
- CentOS 安装配置memcached (转)
1.先下载memcached 和libevent. libevent 最新的稳定版: wget http://monkey.org/~provos/libevent-1.4.14b-stable.ta ...
- PhpExcel数组输出到Excel浏览器下载
经常是mysql查出二维数组,并且数组的带key也是有意义的,考虑到经常用,就打算弄个函数出来,方便以后用! 相对是规范的数组哈,具体可看下$data数组: 生成的excel第一行是对应的key: 直 ...
- php调试利器 -- xdebug
之前整理在印象笔记中,现在搬出来.分本地调试和远程调试.本文亲测通过并截图,有问题欢迎留言探讨. (参考网上多位前辈的博客,整理在笔记里忘记保存原文链接,这里无法贴出链接,望见谅) # 痛处 一般 ...
- 由于Linux操作平台屡次受到黑客的“青睐”,LINUX公司也越来越注重产品的安全问题。
Guardian Digital公司和安全管理服务提供商(MSSP)Guardent公司推出的新产品将提高开放式源代码和Linux产品的安全性能. Guardian Digital公司将于本月底在纽约 ...
- 在SAE上同步djanogo的mysql数据库
折腾了一个下午,终于搞掂了把djanogo应用的mysql数据库导入到SAE上了,归根到底麻烦的根源是SAE限制多多.下面简单记录一下过程以备日后参考使用. 首先还是修改settings.py,把数据 ...
- eclipse里maven项目An error occurred while filtering resources解决办法(转载)
转自:http://liyanjie918.blog.163.com/blog/static/20227290201581143110105/ 在使用eclipse构建maven项目时,突然出现错误提 ...
- 1874 素数和最大 - Wikioi
题目描述 Description 有一天萌萌哒Sevenkplus在跟素数们玩>_<...他玩着玩着突然想到一个问题!就是这样的: 从1到n这n个自然数中,选出一些数使得它们之间两两 ...
- springMVC上传图片
http://blog.csdn.net/cheung1021/article/details/7084673/ http://toutiao.com/a6293854906445021442/ 工程 ...
- [Unity3D]支持的视频格式
Unity3d只支持 .mov, .mpg, .mpeg, .mp4, .avi, .asf这些格式.
- Otto Product Classification Winner's Interview: 2nd place, Alexander Guschin ¯\_(ツ)_/¯
Otto Product Classification Winner's Interview: 2nd place, Alexander Guschin ¯\_(ツ)_/¯ The Otto Grou ...