海浩网论坛

 找回密码
 关闭注册
搜索
热搜: 女囚槛 win7
查看: 394|回复: 3
打印 上一主题 下一主题

发个数学题,螺旋队列,有没有人看得懂? [复制链接]

蓝鲸

你地!斯拉斯拉地有!

UID
20869
注册时间
2003-2-15
帖子
9642
精华
1
跳转到指定楼层
1#
发表于 2010-7-13 18:12:12 |只看该作者 |倒序浏览
21 22 ......
20 7 8 9 10
19 6 1 2 11
18 5 4 3 12
17 16 15 14 13
看清以上数字排列的规律,设1点的坐标是(0,0),x方向向右为正,y方向向下为正。例如,7的坐标为(-1,-1), 2的坐标为(0,1),3的坐标为(1,1)。编程实现输入任意一点坐标(x,y)对应的数字。
答案:
代码如下:
#include <stdio.h>
#define max(a,b) ((a)<(b)?(b):(a))
#define abs(a) ((a)>0?(a):(-a))

int foo(int x, int y)
{
int t = max(abs(x),abs(y));
int u = t + t;
int v = u - 1;
v = v * v + u;

if(x == -t)
v += u + t - y;
else if (y == -t)
v += 3 * u + x - t;
else if (y == t)
v += t - x;
else
v += y - t;
return v;
}

int main()
{
int x,y;
while(scanf("%d%d", &x, &y) == 2)
printf("%d\n", foo(x,y));

return 0;
}

[ 本帖最后由 hugh-true 于 2010-7-13 18:13 编辑 ]
分享到: QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
分享分享0 收藏收藏0 支持支持0 反对反对0
whose more the fool,the fool or the fool who follows?

一个民主国家,主权应该在人民手中,这是天经地义的事;如果一个号称民主的国家,而主权不在人民手中,这决不是正轨,只能算是变态,就不是民主国家...不结束党治,不实行人民普选,如何能实现民主?把人民的权利交给人民! (《新华日报》1945年9月27日社论)

版主

弱弱的海豚

UID
40507
注册时间
2004-11-18
帖子
9169
精华
21
2#
发表于 2010-7-13 18:17:35 |只看该作者
好多年前在百度发过呀
其实我本来什么都没有....


俺是多尔的豌豆.. 俺是墙根...  俺还有那乌黑亮丽的长发...



上得了厅堂,下得了厨房,写得了代码,查得出异常,杀得了木马,翻得了围墙,开得起好车,买得起新房,斗得过二奶,打得过流氓

使用道具 举报

蓝鲸

你地!斯拉斯拉地有!

UID
20869
注册时间
2003-2-15
帖子
9642
精华
1
3#
发表于 2010-7-13 18:31:49 |只看该作者
是呢,就是好多年前呢
whose more the fool,the fool or the fool who follows?

一个民主国家,主权应该在人民手中,这是天经地义的事;如果一个号称民主的国家,而主权不在人民手中,这决不是正轨,只能算是变态,就不是民主国家...不结束党治,不实行人民普选,如何能实现民主?把人民的权利交给人民! (《新华日报》1945年9月27日社论)

使用道具 举报

蓝鲸

你地!斯拉斯拉地有!

UID
20869
注册时间
2003-2-15
帖子
9642
精华
1
4#
发表于 2010-7-13 21:20:57 |只看该作者
是呢好多好多好多年前
whose more the fool,the fool or the fool who follows?

一个民主国家,主权应该在人民手中,这是天经地义的事;如果一个号称民主的国家,而主权不在人民手中,这决不是正轨,只能算是变态,就不是民主国家...不结束党治,不实行人民普选,如何能实现民主?把人民的权利交给人民! (《新华日报》1945年9月27日社论)

使用道具 举报

您需要登录后才可以回帖 登录 | 关闭注册

2021 , Hello Everyone ^_^ ^_^ ^_^