zoj1414

我是傻得不能再傻了,把整个过程模拟出来了,还很高兴,提交之后发现空间超了,看了下别人的原来是找规律啊

坐标中表述的x,y   只有2种关系 :

要么x = y, 当X为偶数 则所求数是2*x,  若为奇数,则2*x -1。

要么x - y = 2.  当X为偶数 则所求数是2*x + 2,  若为奇数,则2*x +1。

唉,可怜我原来的代码

虽然没有过还是贴出来安慰下自己吧

#include <stdio.h>
#include <string.h>
int a[5005][5005];
int main()
{
    a[0][0]=0;
    a[1][1]=1;
    a[2][0]=2;
    a[3][1]=3;
    int i=2,j=1;
    while(i<5003 && j<5003)
    {
        a[i][j+1]=a[i][j-1]+2;
        a[i+2][j+1]=a[i][j+1]+2;
        i++;
        j++;
    }
    int n;
    scanf("%d",&n);
    int x,y;
    while(n--)
    {
        scanf("%d%d",&x,&y);
        if(x==0 && y==0) printf("%d\n",a[x][y]);
        else if(a[x][y]==0) printf("No Number\n");
        else printf("%d\n",a[x][y]);
    }
    return 0;
}

  

posted on 2012-07-31 09:47  矮人狙击手!  阅读(218)  评论(0编辑  收藏  举报

导航