POJ 1222 高斯消元法
来源:互联网 发布:淘宝开店照片要求 编辑:程序博客网 时间:2024/05/19 03:20
CXLOVE的第一篇博文,先来一个水题
开灯关灯问题,5*6的灯阵,将每一个位置上的状态看做一个变元,30个变元,列出30个异或方程,高斯消元解方程即可
N年前就做过这题,当时是位运算枚举+递推
从此cxlove的博客就正式开通了,欢迎大牛拍砖
/*ID:cxlovePROB:POJ 1222HINT:高斯消元*/#include<iostream>#include<cstdio>#include<cstring>using namespace std;using namespace std;int a[31][31]; //系数矩阵int ans[31];void gauss(){for(int i=0;i<30;i++){int k=i;for(;k<30;k++)if(a[k][i]!=0)break;for(int j=0;j<=30;j++)swap(a[i][j],a[k][j]);for(int j=0;j<30;j++)if(i!=j&&a[j][i])for(int k=0;k<=30;k++)a[j][k]=a[i][k]^a[j][k];}}int main(){int t,tt=0;scanf("%d",&t);while(t--){memset(a,0,sizeof(a));for(int i=0;i<30;i++){scanf("%d",&a[i][30]);ans[i]=0;}for(int i=0;i<30;i++){a[i][i]=1;if(i%6!=0)a[i-1][i]=1;if(i%6!=5)a[i+1][i]=1;if(i>5)a[i-6][i]=1;if(i<24)a[i+6][i]=1;}gauss();/*for(int i=0;i<30;i++){for(int j=0;j<=30;j++)printf("%d ",a[i][j]);printf("\n");}*/for(int j=0;j<30;j++) ans[j]=a[j][30]; printf("PUZZLE #%d\n",++tt); for(int i=0;i<30;i++){ printf("%d",ans[i]); if(i%6==5)printf("\n"); elseprintf(" "); }}return 0;}
- poj 1222(高斯消元法求解。。。。)
- POJ 1222 高斯消元法
- POJ 1222 高斯消元法
- POJ 1222 开关问题高斯消元法
- poj 1222
- POJ 1222
- POJ 1222
- poj 1222
- 【POJ】1222
- poj 1222 EXTENDED LIGHTS OUT 高斯消元法
- POJ - 1222 EXTENDED LIGHTS OUT 高斯消元法
- POJ 1222 高斯消元法解开关问题
- poj 1222 EXTENDED LIGHTS OUT (高斯消元法)
- poj 1222 EXTENDED LIGHTS OUT 高斯消元法
- 开关问题 POJ 3276 POJ 3279 POJ 1222
- POJ 1830 高斯消元法
- zoj 1354 poj 1222
- POJ 1222 熄灯游戏
- jquery的ajax教训
- 多线程编程--对pthread_cond_wait()函数的理解
- 弹性动画
- Nginx Location 指令基础
- Android自定义View实现
- POJ 1222 高斯消元法
- mogodb capped collection
- 写代码犹如写文章
- autotools & makefile
- Google 2/3搜索广告收入来自iOS设备 而非Android
- proc /sys/kernel 终结版 linux系统优化
- 交换机端口命名规则
- flash as3 上传文件 text="Error #2038: 文件 I/O 错误
- javascript检测iPhone/iPod/iPad