请问哪位神犇可以帮我优化亿下下吗?
查看原帖
请问哪位神犇可以帮我优化亿下下吗?
389398
SBsimon楼主2021/1/23 11:03
#include<bits/stdc++.h>
using namespace std;
int a[100][100];
int c=1;
int L(int xx,int yy,int x,int y,int k)
{ 
	  if (k==1)
		  return 0;
      int t=c++;
	  int s=k/2;
      if (x<xx+s&&y<yy+s)
		  L(xx,yy,x,y,s);
      else
	  {           
         a[xx+s-1][yy+s-1]=t;
         L(xx,yy,xx+s-1,yy+s-1,s);
	  } 
      if (x>=xx+s&&y<yy+s)
		  L(xx+s,yy,x,y,s);
      else                 
	  {
         a[xx+s][yy+s-1] = t;
        L(xx+s,yy,xx+s,yy+s-1,s);
	  } 
      if (x<xx+s&&y>=yy+s)
		  L(xx,yy+s,x,y,s);
      else
	  {
		  a[xx+s-1][yy+s]=t;
          L(xx,yy+s,xx+s-1,yy+s,s);
	  }
      if (x>=xx+s&&y>=yy+s)
		  L(xx+s,yy+s,x,y,s);
      else 
	  {
         a[xx+s][yy+s]=t;   
         L(xx+s,yy+s,xx+s,yy+s,s);
	  }
}
int main()
{
	int n,k=1,x,y;
	cin>>n>>x>>y;
	for(int i=1;i<=k;i++)
		k=k*2;
		
	x--;
	y--;
	a[x][y]=0;
	L(0,0,x,y,k);
	for(int i=0;i<k;i++)
	{
		for(int j=0;j<k;j++)
			cout<<a[i][j]<<' ';
		cout<<endl<<endl;
	}
	return 0;
}
2021/1/23 11:03
加载中...