螺旋队列问题
来源:互联网 发布:lua和php 编辑:程序博客网 时间:2024/05/18 13:48
设1点的坐标为(0,0),x方向向右为正,y向下为正,如7的坐标是(-1,-1)。编程实现任意输入一个点的坐标(x,y)。输出所对应的数字。
首先对于每一层进行分析:
第0层:只有一个1
第1层:2到9;
第2层:10到25;
。。。
每一层的最后一个数为1,9,25…..是平方数(2t-1)(2t-1)其中t表示层数。n层一共就(2t-1)(2t-1)个数。
每一层分为上下左右四个方向:
右:x=t的方向,(2t-1)(2t-1)+t, 向下是递增的,所以:
(2t-1)(2t-1)+t+y
下:y=t的方向(2t-1)(2t-1)+3t,向左递增和x相反
(2t-1)(2t-1)+3t-x
左:x=-t的方向,(2t-1)(2t-1)+5t, 向上是递增的,和y相反
(2t-1)(2t-1)+5t-y
上:y=t的方向(2t-1)(2t-1)+3t,向左递增和x相同
(2t-1)(2t-1)+7t+x
//螺旋队列问题
#define max(a,b) a>b ? a:bint foo(int x, int y){ int t = max(abs(x), abs(y)); int u = 2 * t - 1; int w = u*u; int v; if (x == -t) v = w + 5 * t - y; else if (y == -t) v = w + 7 * t + x; else if (y == t) v = w + 3 * t - x; else v = w + t + y; return v;}
阅读全文
0 0
- 螺旋队列问题解法
- 螺旋队列的问题
- 螺旋队列问题
- 螺旋队列问题
- 螺旋队列问题
- 螺旋队列问题2
- 螺旋队列问题
- 螺旋队列问题2
- 螺旋队列问题
- 螺旋队列问题
- 【练习题】螺旋队列问题
- 螺旋队列问题
- 螺旋队列问题
- 螺旋队列问题2
- 螺旋队列问题
- 螺旋队列问题
- 螺旋队列问题
- 很好的讲解螺旋队列问题
- ZooKeeper安装配置
- 卸载(删除)Visual Studio Professional 2013 (VSPro2013)
- java:处理输入成绩异常
- css
- 完美世界前端笔试
- 螺旋队列问题
- Emacs 快速指南
- CSS特性
- Flask部署 —— nginx+gunicorn+supervisor
- <学习html>第二天笔记-标签分类、关系;开发工具;文档类型;标签语义化;HTML标签;问题“图像标签代码语法无误,但是图像显示不出来”
- GitHub -- GitHub配置与使用
- sqlalchemy位运算符的使用(与或非等)
- 利用python来解决 小鸡,公鸡,母鸡的数学问题
- 注册github以及创建项目