zoukankan      html  css  js  c++  java
  • 【BZOJ】1923 [Sdoi2010]外星千足虫(高斯消元)

    题目

    传送门:QWQ

    分析

    高斯消元解异或方程组,和解普通方程组差不多。

    范围有点大,要套一个bitset。

    代码

    #include <bits/stdc++.h>
    using namespace std;
    const int maxn = 1050;
    bitset<maxn> a[maxn*2];
    int n, m, b[maxn*2], ans=0;
    void Gauss() {
        for(int i=1;i<=n;i++) {
            int flag=1;
            for(int j=i;j<=m;j++)
                if(a[j][i]!=0) {
                    swap(a[i],a[j]);
                    swap(b[i],b[j]); flag=0;
                    ans = max(ans, j); break;
                }
            if(flag) {
                puts("Cannot Determine"); return;
            }
            for(int j=1;j<=m;j++) {
                if(i==j) continue;
                if(a[j][i]) {
                    a[j]^=a[i]; b[j]^=b[i];
                }
            }
        }
        printf("%d
    ", ans);
        for(int i=1;i<=n;i++) 
            if(b[i]) printf("?y7M#
    ");
            else printf("Earth
    ");
    }
    int main() {
        int q=0;
        scanf("%d%d",&n,&m);
        for(int i=1;i<=m;i++) {
            for(int j=1;j<=n;j++) {
                scanf("%1d",&q);
                a[i][j]=q;
            }
            scanf("%d",&b[i]);
        }
        Gauss();
    }
  • 相关阅读:
    程序优化
    obsidium 重定位
    Obsidium V1.3.0.4 脱壳
    SEH 栈溢出
    DWORD SHOOT
    两种堆表学习
    修改网页转向
    WireShark过滤语法
    获取系统信息学习
    怎么在 渗透无键盘 查询机
  • 原文地址:https://www.cnblogs.com/noblex/p/9741301.html
Copyright © 2011-2022 走看看