void函数里循环中的输出“#”这一行
如果带上这行答案无误
“#”可以替换为其他变量或符号
但如果删去答案就会出现问题
这是为什么?
(这个代码会超时我是知道的)
(准备改算法但还是想不通这里)
#include<iostream>
using namespace std;
int ans,n,m,x,y,k,b,o;
int l[5001][5001];
void f(int food)
{
int p;
for(int i=1;i<=n;i++)
{
if(l[food][i]==1)
{
cout<<"#"<<endl;
f(i);
}
else
p++;
}
if(p==n)
{
ans++;
}
}
int main(){
cin>>n>>m;
for(int i=1;i<=m;i++)
{
cin>>x>>y;
l[x][y]++;
}
k=1;
for(int i=1;i<=n;i++)
{
for(int j=1;j<=n;j++)
{
if(l[j][i]==0)
b++;
else
break;
}
if(b==n)
{
f(i);
}
b=0;
}
ans=ans%80112002;
cout<<ans<<endl;
return 0;
}