rt,编译器里是可以编译的,但是提交到洛谷就显示编译失败
#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
typedef pair<int,int> PII;
const int N=1e2+10;
const int INF=0x3f3f3f3f;
int n,m;
int dis[1<<10];
int a[N][N];
signed main()
{
cin.tie(0);
cout.tie(0);
cin>>n>>m;
for(int i=0;i<m;i++)
{
for(int j=0;j<n;j++)
{
cin>>a[i][j];
}
}
queue<int> q;
memset(dis,0x3f,sizeof dis);
dis[(1<<n)-1]=0;
q.push((1<<n)-1);
vector<int> vis(1<<n);
vis[(1<<n)-1]=true;
while(!q.empty())
{
auto int t=q.front();
q.pop();
for(int i=0;i<m;i++)
{
int tt=t;
for(int j=0;j<m;j++)
{
if(a[i][j]==1)
{
if(t>>j&1)
{
tt^=1<<j;
}
}
else if(a[i][j]==-1)
{
if(t>>j&1==0)
{
tt^=1<<j;
}
}
}
if(!vis[tt]&&dis[tt]>dis[t]+1)
{
vis[tt]=true;
q.push(tt);
dis[tt]=dis[t]+1;
}
}
}
if(dis[0]!=INF)
{
cout<<dis[(1<<n)-1]<<endl;
}
else
{
cout<<-1<<endl;
}
return 0;
}