【POJ 1222】 EXTENDED LIGHTS OUT
2024-08-31 06:59:29
【题目链接】
http://poj.org/problem?id=1222
【算法】
列出异或方程组,用高斯消元求解即可
【代码】
#include <algorithm>
#include <bitset>
#include <cctype>
#include <cerrno>
#include <clocale>
#include <cmath>
#include <complex>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <ctime>
#include <deque>
#include <exception>
#include <fstream>
#include <functional>
#include <limits>
#include <list>
#include <map>
#include <iomanip>
#include <ios>
#include <iosfwd>
#include <iostream>
#include <istream>
#include <ostream>
#include <queue>
#include <set>
#include <sstream>
#include <stdexcept>
#include <streambuf>
#include <string>
#include <utility>
#include <vector>
#include <cwchar>
#include <cwctype>
#include <stack>
#include <limits.h>
using namespace std; int i,j,k,T,TC,cnt;
int a[],f[],pos[]; int main()
{ scanf("%d",&T);
while (T--)
{
memset(f,true,sizeof(f));
cnt = ;
memset(a,,sizeof(a));
for (i = ; i <= ; i++) scanf("%d",&a[i]);
for (i = ; i <= ; i++)
{
for (j = ; j <= ; j++)
{
if (i != ) a[(i-)*+j] |= << ((i - ) * + j);
if (i != ) a[(i-)*+j] |= << (i * + j);
if (j != ) a[(i-)*+j] |= << ((i - ) * + j - );
if (j != ) a[(i-)*+j] |= << ((i - ) * + j + );
a[(i-)*+j] |= << ((i - ) * + j);
}
}
for (i = ; i <= ; i++)
{
for (j = i + ; j <= ; j++)
{
if (a[j] > a[i])
swap(a[i],a[j]);
}
if (a[i] == ) break;
for (k = ; k; k--)
{
if (a[i] & ( << k))
{
for (j = ; j <= ; j++)
{
if (i != j && (a[j] & ( << k)))
a[j] ^= a[i];
}
f[k] = false;
pos[k] = i;
break;
}
}
}
printf("PUZZLE #%d\n",++TC);
for (i = ; i <= ; i++)
{
if (f[i]) printf("0 ");
else printf("%d ",a[pos[i]]&);
if (i % == ) printf("\n");
}
} return ; }
最新文章
- jQuery--.wrap()方法
- 对象-3.py
- php总结 --- 2.字符串
- golang的第一个deadlock
- 无法将匿名方法转换为System.Delegate
- linux下notify机制(仅用于内核模块之间的通信)
- swift:Optional Type 、Swift和Objective-C混编的讲解
- DataGrid的打印预览和打印
- ISA2006 下建立VPN连接时出现“错误800”时的解决办法
- (转载)遍历memcache中已缓存的key
- OpenStack点滴02-WSGI
- C#二进制字节数组操作功能 拦截字节数组SubByte
- 详解 swift2.2 和 OC 的混编
- Spring Task定时任务Scheduled
- javascript 事件基础
- PHP 7.3 我们将迎来灵活的 heredoc 和 nowdoc 句法结构
- CPU的概念
- GDI+_Png图片浏览器
- Oracle(限定查询2)
- Thymeleaf使用bootstrap及其bootstrap相关插件(二)