连输出都没有 不知道哪里有问题 求助。。。
查看原帖
连输出都没有 不知道哪里有问题 求助。。。
1114927
Lolaandd楼主2023/11/27 23:09
#include <iostream>
#include <vector>
#include <cmath>
using namespace std;

void kick_out(int a,int b,int c,int d,vector<vector<int> > &arr)//把坐标是(a,b) (c,d) 之间的数字归零 
{
	for(int i=a;i<=(a+c)/2;i++)
		for(int j=b;j<=(b+d)/2;j++)
			arr[i][j]=0;
	if((c-a)==1) return;
	kick_out(a,(b+d)/2,(a+c)/2,d,arr);
	kick_out((a+c)/2,(b+a)/2,c,d,arr);
	kick_out((a+c)/2,b,c,(b+d)/2,arr);
}

int main()
{
	int n,m=1;
	cin >> n;
	for (int i=0;i<n;i++)
	{
		m*=n;
	}
	vector<vector<int> > arr(n,vector<int>(n,1));
	kick_out(0,0,m-1,m-1,arr);
	return 0;
	for(int i=0;i<n;i++)
	{
		for(int j=0;j<n;j++)
		{
			cout << arr[i][j]<<" ";
		}
		cout << endl;
	}
	
	return 0;
}
2023/11/27 23:09
加载中...