思路:

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

  我很不解,下了个数据结果——,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. UNR #1 火车管理

    很简单 用一个线段树维护 1.答案 2.当前栈顶是什么时候push进来的 然后用一棵以时间为版本的可持久化线段树维护每个操作之后第一个覆盖到他的操作是哪个 就可以了 询问直接在线段树上询问,修改在两棵 ...

  2. div靠右浮动案例

    <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...

  3. 【Lintcode】036.Reverse Linked List II

    题目: Reverse a linked list from position m to n. Given m, n satisfy the following condition: 1 ≤ m ≤ ...

  4. BZOJ3219:巡游

    浅谈树分治:https://www.cnblogs.com/AKMer/p/10014803.html 题目传送门:https://www.lydsy.com/JudgeOnline/problem. ...

  5. TCP点对点穿透探索--失败

    TCP点对点穿透探索 点对点穿透是穿透什么 点对点穿透,需要实现的是对NAT的穿透.想实现NAT的穿透,当然要先了解NAT到底是什么,以及NAT是用来干什么的.NAT全称Network Address ...

  6. [poj3071]football概率dp

    题意:n支队伍两两进行比赛,求最有可能获得冠军的队伍. 解题关键:概率dp,转移方程:$dp[i][j] +  = dp[i][j]*dp[i][k]*p[j][k]$表示第$i$回合$j$获胜的概率 ...

  7. 阿里云 centos7.2 云安装mysql

    [root@iZ28gvqe4biZ ~]# rpm -Uvh http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm获取h ...

  8. VS2015中使用Git遇到问题 Cannot do push / pull in git - working with visual studio

    I have made a lot of changes, when I am trying to push them - I am getting the next error: You canno ...

  9. HeapCreate

    为进程创建新堆,请求分配虚拟内存分页,函数原型如下: HANDLE HeapCreate( DWORD flOptions, SIZE_T dwInitialSize, SIZE_T dwMaximu ...

  10. 你需要了解的有关.NET日期时间的必要信息

    引言    DateTime数据类型是一个复杂的问题,复杂到足以让你在编写[将日期从Web服务器返回到浏览器]简单代码时感到困惑. ASP.NET MVC 5和 Web API 2/ASP.NETCo ...