螺旋队列(p98)
先判断这个坐标代表的数位于哪一层,然后依据该层最大的数去计算这个坐标所代表的数。
#include"iostream"
#include"stdio.h"
#include"algorithm"
#include"map"
using namespace std; typedef pair<int,int> pInt2; int GetLayer(int x,int y)
{
return abs(x)>abs(y)?abs(x):abs(y);
} int GetRes(int x,int y,int layer)
{
int res,maxLayerNum=(*layer+)*(*layer+);
if(y==-layer)
{
if(x>)
res=maxLayerNum-(layer-x);
else
res=maxLayerNum-layer+x;
}
else if(x==-layer)
{
if(y<)
res=maxLayerNum-*layer-(layer+y);
else
res=maxLayerNum-*layer-y;
}
else if(y==layer)
{
if(x<)
res=maxLayerNum-*layer-(layer+x);
else
res=maxLayerNum-*layer-x;
}
else
{
if(y>)
res=maxLayerNum-*layer-(layer-y);
else
res=maxLayerNum-*layer+y;
}
} int main()
{
int x,y;
while(cin>>x>>y)
{
cout<<"(x,y): "<<GetRes(x,y,GetLayer(x,y))<<endl;
}
return ;
}
螺旋队列(p98)的更多相关文章
- [interview]螺旋队列问题
摘要 本文主要讲解三种螺旋队列的实现方式和打印输出: 从中心往外端顺时针旋转,记为『外螺旋队列』 从左顶点开始,绕剩下的最大圈顺时针往内旋转,记为『内螺旋队列』 从左顶点开始,之字形旋转(只能同行同列 ...
- 螺旋队列和hiho1525逃离迷宫3
我是真调不出错误了! hiho1525逃离迷宫3 #include <stdio.h> #include <stdlib.h> #include <math.h> ...
- 语言总结—C/C++
参考<程序员面试宝典> 1. 基本概念 1.1 赋值语句 例1. 按位与操作,例如:a=3,b=3,a&b值等于 0011 & 0011 结果还是0011,那么值还是3: ...
- 20140331 HOG代码调试 Boost库安装
1.CUDAHOG代码调试 错误1: 错误提示:(main.obj : error LNK2019: 无法解析的外部符号 "public: __thiscall cudaHOG::cudaH ...
- 消息队列——RabbitMQ学习笔记
消息队列--RabbitMQ学习笔记 1. 写在前面 昨天简单学习了一个消息队列项目--RabbitMQ,今天趁热打铁,将学到的东西记录下来. 学习的资料主要是官网给出的6个基本的消息发送/接收模型, ...
- 消息队列 Kafka 的基本知识及 .NET Core 客户端
前言 最新项目中要用到消息队列来做消息的传输,之所以选着 Kafka 是因为要配合其他 java 项目中,所以就对 Kafka 了解了一下,也算是做个笔记吧. 本篇不谈论 Kafka 和其他的一些消息 ...
- Beanstalkd一个高性能分布式内存队列系统
高性能离不开异步,异步离不开队列,内部是Producer-Consumer模型的原理. 设计中的核心概念: job:一个需要异步处理的任务,是beanstalkd中得基本单元,需要放在一个tube中: ...
- .net 分布式架构之业务消息队列
开源QQ群: .net 开源基础服务 238543768 开源地址: http://git.oschina.net/chejiangyi/Dyd.BusinessMQ ## 业务消息队列 ##业务消 ...
- 【原创经验分享】WCF之消息队列
最近都在鼓捣这个WCF,因为看到说WCF比WebService功能要强大许多,另外也看了一些公司的招聘信息,貌似一些中.高级的程序员招聘,都有提及到WCF这一块,所以,自己也关心关心一下,虽然目前工作 ...
随机推荐
- c# 获取非托管指针长度
public List<string> GetPDFValues() { List<string> strs = new List<string>(); unsaf ...
- JavaScript -- Array中的push()方法和concat()方法介绍
Array => push()方法向数组的末尾添加一个或者多个元素,也就是说它会改变数组本身 concat() => concat()方法用于连接2个或者多个数组,但它的特殊之处在于,它会 ...
- ASP.NET框架获取数据字典数据做成树的格式
private List<TreeEntity> treeList = new List<TreeEntity>();//创建一个树的List集合 public ActionR ...
- db2中临时表在存储过程中的使用
DROP PROCEDURE ADMINISTRATOR.SP_TEST (INTEGER, CHARACTER ()); CREATE PROCEDURE administrator.sp_test ...
- springcloud提供开放api接口签名验证
一.MD5参数签名的方式 我们对api查询产品接口进行优化: 1.给app分配对应的key.secret 2.Sign签名,调用API 时需要对请求参数进行签名验证,签名方式如下: a. 按照请求参数 ...
- [database] postgresql 外网访问
配置 环境 ubuntu 14.04 LTS 版本 postgresql version 9.3 修改监听地址 编辑 /etc/postgresql/9.3/main/postgresql.conf ...
- 安装两个XAMPP或者更新XAMPP时, PHP版本还是旧版本的问题
转载自 : http://blog.csdn.net/everything1209/article/details/53466725 原文 : 问题:我电脑有原先有一个wamp,但是PHP版本为5.5 ...
- spring深入了解心得
spring 主要核心组件 :Core.上下文(Context) .实体(Bean): spring 主要由两大特色:控制反转(IOC).面向对象(AOP): spring中Core主要用于组建Bea ...
- C语言/C++编程学习:C语言环境设置
C语言是面向过程的,而C++是面向对象的 C和C++的区别: C是一个结构化语言,它的重点在于算法和数据结构.C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现 ...
- 从头开始学eShopOnContainers——Visual Studio 2017环境配置
一.安装和配置Docker环境 1.安装Docker CE for Windows 从官方网站下载并安装,https://docs.docker.com/docker-for-windows/inst ...