思路:

  写完后信心满满,结果超时。

  我很不解,下了个数据结果——,z竟然是大于1e10的,跟题目给的不一样啊

  原来如此,正解是一行一行的走的。。。
  注意当到两边一样近时,应优先向下和右!!!!!!

这是个50分代码

#include<iostream>
#include<queue>
#include<cstdio>
#include<algorithm>
#include<cstring>
using namespace std;
#define N 100009
int n,m,x,y,z;
int deep,dir;
int dx[]={,,-,},dy[]={,,,-};
int main()
{
scanf("%d%d%d%d%d",&n,&m,&x,&y,&z);
deep=min(x,y);deep=min(deep,min(n-x,m-y));
if(deep==x) dir=;
if(deep==y) dir=;
if(deep==(n-x)) dir=;
if(deep==(m-y)) dir=;
dir--;n--,m--;
for(int i=;i<=z;i++)
{
if(x+dx[dir]>=deep&&y+dy[dir]>=deep&&x+dx[dir]<=n-deep&&y+dy[dir]<=m-deep)
x+=dx[dir],y+=dy[dir];
else
{
dir=(dir+)%;
x+=dx[dir],y+=dy[dir];
}
}
printf("%d %d",x,y);
return ;
}

这是个AC代码

#include<iostream>
#include<queue>
#include<cstdio>
#include<algorithm>
#include<cstring>
using namespace std;
long long n,m,x,y,z;
long long deep,dir,len;
int main()
{ scanf("%lld%lld%lld%lld%lld",&n,&m,&x,&y,&z);n--,m--;
deep=min(x,y);deep=min(deep,min(n-x,m-y));
if(deep==(m-y)) dir=;
if(deep==x) dir=;
if(deep==y) dir=;
if(deep==(n-x)) dir=;
if(x==(n-x)&&x==deep)
dir=;
if(y==(m-y)&&y==deep)
dir=; dir--;
while(z+>=)
{
if(dir==)
{
len= n-x-deep;
if(z>len)
{
z-=len; x+=len;
dir=;
}else
{
printf("%lld %lld",x+z,y);
return ;
}
}else
if(dir==)
{
len=m-y-deep;
if(z>len)
{
z-=len; y+=len;
dir=;
}else
{
printf("%lld %lld",x,y+z);
return ;
}
}else
if(dir==)
{
len=x-deep;
if(z>len)
{
z-=len;x=deep;
dir=;
}else
{
printf("%lld %lld",x-z,y);
return ;
}
}else
if(dir==)
{
deep++;
len=y-deep;
if(z>len)
{
z-=len;y=deep;
dir=;
}else
{
printf("%lld %lld",x,y-z);
return ;
} } }
return ;
}

P4874 回形遍历 —模拟的更多相关文章

  1. Openjudge-NOI题库-二维数组回形遍历

    题目描述 Description 给定一个row行col列的整数数组array,要求从array[0][0]元素开始,按回形从外向内顺时针顺序遍历整个数组.如图所示:  输入输出格式 Input/ou ...

  2. 2017.9.23 NOIP2017 金秋杯系列模拟赛 day1 T1

    回形遍历( calc .cpp/c/pas) 时间限制:1s内存 限制: 256MB [问题 描 述] 给出一个 n*m 的棋盘,按如下方式遍历,请问(x,y)往后 z 步走到的是哪个格子. [输入] ...

  3. FZU 1893 内存管理 模拟

    比赛的时候队友要做这道题…… 他没做出来自己也被误导了…… 也算是个教训 自己还是要有自己的思路…… 又是模拟题…… 网上都是用vector做的 我最近才会stl 怎么会用那么高大上的的东西…… 强力 ...

  4. express+mockjs实现模拟后台数据发送

    前言: 大多数时候,前端会和后端同时进行开发,即在我们开发完页面的时候,很可能还不能立马进入联调阶段,这个时候,为了保证我们接口的有效性和代码的功能完整,我们可能需要模拟数据. 模拟数据方法 1.通过 ...

  5. JavaScipt 事件体系

    事件机制 jQuery对事件的绑定分别有几个API .bind()/.live()/.delegate()/.on() 不管是用什么方式绑定,归根到底还是用addEventListener/attac ...

  6. noi题库(noi.openjudge.cn) 1.8编程基础之多维数组T21——T25

    T21 二维数组右上左下遍历 描述 给定一个row行col列的整数数组array,要求从array[0][0]元素开始,按从左上到右下的对角线顺序遍历整个数组. 输入 输入的第一行上有两个整数,依次为 ...

  7. Regional Changchun Online--Alisha’s Party

    Alisha's Party Time Limit: 3000/2000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others) ...

  8. Delphi下实现全屏快速找图找色

    前言 最近有好几个朋友都在问我找图找色的问题,奇怪?于是乎写了一个专门用于找图找色的单元文件“BitmapData.pas”.在这个单元文件中我实现了从文件中导入位图.屏幕截图.鼠标指针截图.在图片上 ...

  9. Java实现非递归删除目录

    最近在学C#的文件系统, 发现C#的文件系统貌似比java的东西少一点, 居然连删除目录都直接做好封装了, 想到学java的时候还要自己写递归删除, 好像没写过非递归的,就在网上查了下, 关于非递归删 ...

随机推荐

  1. 【Opencv】Mat基础

    1.Mat::imread() C++: Mat imread(const string& filename, int flags=1 ) filename – Name of file to ...

  2. 【Lintcode】119.Edit Distance

    题目: Given two words word1 and word2, find the minimum number of steps required to convert word1 to w ...

  3. Jquery通过ajax请求NodeJS返回json数据

    最近看了NodeJS相关的,在网上查了下结合AJAX的应用,感觉应用前景还是不错的.为什么用这个组合呢? 1.NodeJS不需要安装,拷贝过去就可以使用,而环境变量可以只配置在当前cmd窗口,运行方便 ...

  4. uC/OS-II源码分析(四)

    内核结构 1,  临界区,OS_ENTER_CRITICAL和OS_EXIT_CRITICAL 为了处理临界区代码,必须关中断,等处理完毕后,再开中断.关中断可以避免其他任务或中断进入临界区代码.uC ...

  5. 几个重要的 ASM Disk Groups 参数

    几个重要的Disk group 属性: 1. ACCESS_CONTROL.ENABLED该属性用来控制某个disk group 上ASM FILE Access Control. 该参数有2个值:t ...

  6. Windows下Anaconda安装 python + tensorflow

    下载安装Anaconda 首先下载Anaconda,可以从清华大学的镜像网站进行下载. 安装Anaconda,注意安装时不要将添加环境变量的选项取消掉. 安装完成之后,在安装目录下cmd,输入 con ...

  7. hibernate学习 六 Hibernate缓存

    缓存: 如果在集群环境下使用Hibernate时,(集群有节点A ,节点B) 当请求,发往A节点,A在数据库中修改了一条记录,然后节点B的缓存中如何实时的更新节点A修改的新数据          hi ...

  8. KMP匹配 (1)

    ---恢复内容开始--- 字符串匹配是计算机的基本任务之一. 举例来说,有一个字符串"BBC ABCDAB ABCDABCDABDE",我想知道,里面是否包含另一个字符串" ...

  9. js操作Iframe非当前最上层窗体

    如果当前窗口不是最上层窗口(比如是在Iframe中),那么就把自己变为最上层窗口.  <script language="javascript" type="tex ...

  10. MySQL 之 导出导入数据

    导出数据库(sql脚本)  mysqldump -u 用户名 -p 数据库名 > 导出的文件名mysqldump -u root -p --databases db_name > test ...