POJ 1830 高斯消元

原创 2012年03月30日 18:48:18

http://poj.org/problem?id=1830

依旧高斯消元,不解释

方程建立很简单,如果有解,解的个数便是2^(自由变元个数),因为每个变元都有两种选择

/*
ID:cxlove
PROB:poj 1830 开关问题
DATA:2012.3.30
HINT:高斯消元
*/
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int s[35],e[35],a[35][35],n;
int gauss(){
	int i,j;
	for(i=1,j=1;i<=n&&j<=n;j++){
		int k=i;
		for(;k<=n;k++)
			if(a[k][j])
				break;
		if(a[k][j]){
			for(int r=1;r<=n+1;r++)
				swap(a[i][r],a[k][r]);
			for(int r=1;r<=n;r++)
				if(r!=i&&a[r][j])
					for(k=1;k<=n+1;k++)
						a[r][k]^=a[i][k];
			i++;
		}
	}
	for(j=i;j<=n;j++)
		if(a[j][n+1])
			return -1;
	return 1<<(n-i+1);
}
int main(){
	int t,i,j;
	scanf("%d",&t);
	while(t--){
		scanf("%d",&n);
		memset(a,0,sizeof(a));
		for(i=1;i<=n;i++)
			scanf("%d",&s[i]);
		for(j=1;j<=n;j++){
			scanf("%d",&e[j]);
			if(s[j]!=e[j])
				a[j][n+1]=1;
			a[j][j]=1;
		}			
		while(scanf("%d%d",&i,&j)&&i+j)
			a[j][i]=1;
		int ans=gauss();
		if(ans==-1)
			printf("Oh,it's impossible~!!\n");
		else
			printf("%d\n",ans);
	}
	return 0;
}



版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

【POJ1830】开关问题 高斯消元求自由元

题意:中文题。 题解: 呃,求自由元个数,然后输出1 如果无解输出那个题中给的串。 诶网上代码真不可看,我绝望了决定照自己想法随便写写。 然后49行没压行搞过去了。 网上全是100行+什么心态...

POJ 1830 开关问题(高斯消元)

Description有N个相同的开关,每个开关都与某些开关有着联系,每当你打开或者关闭某个开关的时候,其他的与此开关相关联的开关也会相应地发生变化,即这些相联系的开关的状态如果原来为开就变为关,如果...

POJ1830 开关问题

中文题目,就不说题目大意了

POJ1830,01矩阵高斯消元

拿到这道题后,没啥思路,后来看了几份解题报告后,才发现这题用线性方程组来解,终于知道了线性代数在ACM的用武之地了。由于是中文题,题目解释略。直接说解题思路:设A矩阵是灯泡关系矩阵,A[[I][J]表...

poj 1830 开关问题 (高斯消元)

开关问题 Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 8070   Accepted:...

POJ1830 开关问题 高斯消元

题目链接:http://poj.org/problem?id=1830 题目大意:有N个相同的开关,每个开关都与某些开关有着联系,每当你打开或者关闭某个开关的时候,其他的与此开关相关联的开关...

POJ 1222 EXTENDED LIGHTS OUT(高斯消元)

DescriptionIn an extended version of the game Lights Out, is a puzzle with 5 rows of 6 buttons each ...

【BZOJ3894】文理分科 最小割 (再不刷它就土了,毕竟水题)

啦啦啦啦Markdown啊啦啦啦啦怎么用啊啦啦啦啦公式板啊还是别用Markdown啦呜啊~~好了,说题解。 嗯自己看代码build部分吧,就是这么的暴力!#include #include #i...

POJ 1681 Painter's Problem(高斯消元)

DescriptionThere is a square wall which is made of n*n small square bricks. Some bricks are white wh...

POJ 1830 开关问题

开关问题 Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 7739 Accepted: 3037Descript...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)