蒟蒻求助 样例都过不去
查看原帖
蒟蒻求助 样例都过不去
469066
zzxLLL楼主2022/1/24 00:16

样例输出0 重新做了好几遍了 救救孩子吧

#include<cstdio>
const int mod=100000000;
const int M=13,K=1<<13;

int m,n;
int f[M][K],a[M];
bool ok[K];

int main(){
	scanf("%d%d",&m,&n);
	for(int i=1;i<=m;i++)
		for(int j=1,x;j<=n;j++){
			scanf("%d",&x);
			(a[i]<<=1)+=x;
		}
	
	for(int i=0;i<(1<<n);i++)
		if(!(i&(i<<1))&&!(i&(i>>1))) ok[i]=true;
	
	f[0][0]=1;
	for(int i=1;i<=m;i++)
		for(int j=0;j<(1<<n);j++)
			if((j&a[i]==j)&&ok[j])
				for(int k=0;k<(1<<n);k++)
					if(k&j==0) (f[i][j]+=f[i-1][k])%=mod;
	
	int ans=0;
	for(int i=0;i<(1<<n);i++) (ans+=f[m][i])%=mod;
	printf("%d",ans);
	return 0;
}
2022/1/24 00:16
加载中...