高斯消元解异或方程组

 #include <iostream>
#include <algorithm>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <cmath>
#include <ctime>
#include <bitset> using namespace std; int n,m,Ans;
char str[];
bitset<> a[]; void Gauss()
{
int i,j,k,cur=;
for(i=;i<=n;++i)
{
cur++;j=cur;
while(!a[j][i] && j<=m)j++;
if(j==m+){Ans=-;return ;}
else Ans=max(Ans,j);
if(j!=cur)swap(a[j],a[cur]);
for(k=;k<=m;++k)
if(a[k][i] && k!=cur)a[k]^=a[cur];
}
return ;
} int main()
{
int i,j; scanf("%d%d",&n,&m);
for(i=;i<=m;++i)
{
scanf("%s",str+);
for(j=;j<=n;++j)a[i][j]=str[j]-;
scanf("%s",str+);
a[i][n+]=str[]-;
} Gauss(); if(Ans==-){printf("Cannot Determine\n");goto End;}
printf("%d\n",Ans);
for(i=;i<=n;++i)
printf("%s\n",a[i][n+]?"?y7M#":"Earth");
End:
return ;
}

最新文章

  1. javascript基础06
  2. Html 移动web开发细节处理
  3. 微信开发笔记:公众号获取access_token
  4. .NET 2.0 检测
  5. ExtJs之Ext.query
  6. jmap命令
  7. 让你提前知道软件开发(24):C语言和主要特征的历史
  8. HUST 1605 Gene recombination
  9. DEV下拉框LookUpEdit使用技巧
  10. Unity Shader 知识点总结(二)
  11. 浅谈聚类算法(K-means)
  12. python字符串,列表,字符串,元组,集合的一些方法
  13. 使用MyBatis时接收值和返回值选择Map类型或者实体类型
  14. 解决flask的端口占用
  15. Android application使用总结
  16. eclipse的常用设置(空间新建后需要的配置)
  17. SharePoint 2013 APP 开发示例 (三)使用远程的web资源
  18. Logcat + money 笔记
  19. 使用livereload实现自动刷新
  20. MyBatis入门(一)—— 入门案例

热门文章

  1. openStack aio nova service-list neutron ext-list
  2. FSDataInputStream对象 读取数据
  3. PCB MS SQL SERVER 字段含小写字母更新为大写字母
  4. E20170805-hm
  5. $P2299 Mzc和体委的争夺战$
  6. Zookeeper概念学习系列之zookeeper的节点
  7. [laravel]用户异地登录后踢掉之前的登录
  8. Python3之Zip
  9. Angular——数据绑定
  10. JS高级——函数的调用模式