AOj 448 재 미 있 는 행렬.
1479 단어 행렬
이 문 제 는 처음에 2 ^ 16 을 만 들 려 고 했 어 요. 집합 비트 연산 이 줄곧 잘 되 지 않 아서 시간 을 초과 할 필요 가 없다.그냥 뒤 져 보 세 요. 가 지 를 자 르 면 지나 갑 니 다.
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <algorithm>
#include <cmath>
#include <stack>
#include <queue>
#include <vector>
#include <map>
#include <string>
#include <iostream>
using namespace std;
int Flag=0;
int vis[1000];
int n,m;
int gg[100][306];
void dfs(int x)
{
if(Flag) return ;
if(x==m){Flag=1;return ;}
if(vis[x]) dfs(x+1);
else{
for(int i=0;i<n;i++){
int hehe=0;
int vis1[305];
if(!gg[i][x]) continue;
for(int j=0;j<m;j++)
vis1[j]=vis[j];
for(int j=0;j<m;j++){
if(vis[j]&&gg[i][j]){hehe=1;break;}
}
if(!hehe){
for(int j=0;j<m;j++){
if(gg[i][j]) vis[j]=1;
}
dfs(x+1);
for(int j=0;j<m;j++)
vis[j]=vis1[j];
}
}
}
}
int main()
{
while(scanf("%d%d",&n,&m)!=EOF){
Flag=0;
memset(vis,0,sizeof(vis));
for(int i=0;i<n;i++)
for(int j=0;j<m;j++)
scanf("%d",&gg[i][j]);
dfs(0);
if(!Flag) printf("It is impossible
");
else printf("Yes, I found it
");
}
return 0;
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Numpy 퇴장? ! Sympy로 행렬을 편미분가필: 스칼라 함수를 벡터로 미분 안녕하세요, 노인 기술자입니다. 제 시대는 아직 끝나지 않습니다. 하지만 행렬 연산이라고 하면 Numpy라고 하는 시대는 끝난 것 같습니다. 그 이름도 Sympy (설마 신 py가 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.