蒟蒻菜题求助,出现了不能理解的错误
  • 板块灌水区
  • 楼主SealEx
  • 当前回复7
  • 已保存回复7
  • 发布时间2024/6/26 10:11
  • 上次更新2024/6/26 15:29:02
查看原帖
蒟蒻菜题求助,出现了不能理解的错误
124376
SealEx楼主2024/6/26 10:11

大佬们,这个代码里面的sc函数在运行的时候,里面那句

if(i==1 or j==1)
{
	a[i][j]=1;
}

会不知道为什么把m变量也赋值掉,感觉像是指针索引过去了,怎么解决,在线等

#include<bits/stdc++.h>
using namespace std;
long long a[21][21],n,m,x,y;

int j;
void pd(int x,int y)
{
	int df[8][8]={{-2,-1},{-2,1},{2,-1},{2,1},
				{-1,2},{-1,-2},{1,2},{1,-2}};
	int x1,y1;
	for(int i=0;i<=7;i++)
	{
		x1=x+df[i][0];
		y1=y+df[i][1];
		if(x1>=0 and y1>=0)
		{
			a[x1][y1]=-1;
		}
	}
	return;
}
void sc(int j) 
{
	int i;
	for(i=1;i<=n;i++)
	{
		if(a[i][j]==-1)
		{
			a[i][j]=0;
		}
		else
		{
			if(i==1 or j==1)
			{
				a[i][j]=1;
			}
			else 
			{
				a[i][j]=a[i-1][j]+a[i][j-1];
			}
		}
	}
}
int main()
{
	cin>>n>>m;
	n++;m++;
	cin>>x>>y;
	x++;y++;
	pd(x,y);
	a[x][y]=-1;
	a[1][1]=1;
	for(j=1;j<=m;j++)
	{
		sc(j);
	}
	cout<<a[n][m]<<endl;
	return 0;
}
2024/6/26 10:11
加载中...