玄学问题?!进不了函数。。。(/yh)
查看原帖
玄学问题?!进不了函数。。。(/yh)
38171
DeNeRATe楼主2020/8/1 09:00
//LOJ 2100
#include <iostream>
#include <cstdio>
#include <algorithm>
#include <cmath>
#include <cstdlib>
#include <ctime>
#include <cstring>

#define LL long long
#define Lowbit(X) (X&(-X))
#define Lson (X<<1)
#define Rson (X<<1|1)
#define Cl(X,Y) memset((X),(Y),sizeof(X))
#define FOR(i,A,B) for(int i=A;i<=B;i++)
#define BOR(i,A,B) for(int i=A;i>=B;i--)
#define FOR_SIDE(i,A) for(int i=Head[A];i;i=Next[i])
#define INF 0x7fffffff
using namespace std;
const int MAXN=510;

int Total,Ans,Cop[MAXN][MAXN];

struct Node {
    int Squ[MAXN][MAXN];
    int Row,Line;
	
    inline void Clean(int X) { FOR(i,1,Row) FOR(j,1,Line) Squ[i][j]=X; }
    inline void Transpose() {
        FOR(i,1,Row) FOR(j,1,Line) Cop[i][j]=Squ[i][j];
        int Temp=Row; Row=Line; Line=Temp;
        FOR(i,1,Row) FOR(j,1,Line) Squ[i][j]=Cop[j][i];
    }

    friend Node operator * (Node &A,Node &B) {
        Node Temp;
        Temp.Clean(0);
        Temp.Row=A.Row; Temp.Line=B.Line;
        FOR(i,1,Temp.Row) FOR(j,1,Temp.Line) FOR(k,1,A.Line)
        Temp.Squ[i][j]+=A.Squ[i][k]*B.Squ[k][j];
        return Temp;
    }

    friend Node operator - (Node &A,Node &B) {
        Node Temp;
        Temp.Clean(0);
        Temp.Row=A.Row; Temp.Line=A.Line;
        FOR(i,1,Temp.Row) FOR(j,1,Temp.Line)
        Temp.Squ[i][j]=A.Squ[i][j]-B.Squ[i][j];
        return Temp;
    }

}A,B,C;

inline void Find() {
    Node Res=A*B;
    Res=Res-C;
    Node Mine=A;
    Mine.Transpose();
    Ans=max(Ans,(Res*Mine).Squ[1][1]);
}

int main() {
    //File();
    srand(time(NULL));
    scanf("%d",&Total);
    B.Row=B.Line=C.Line=A.Line=Total;
    C.Row=A.Row=1; A.Clean(1);
    FOR(i,1,Total) FOR(j,1,Total) { scanf("%d",&B.Squ[i][j]); }
    FOR(i,1,Total) { scanf("%d",&C.Squ[1][i]); }
    Find();
    FOR(i,1,1000) {
        int Temp=(rand()%Total)+1;
        A.Squ[1][Temp]^=1;
        Find();
    }
    printf("%d\n",Ans);
    //fclose(stdin); fclose(stdout);
    system("pause");
    return 0;
}
2020/8/1 09:00
加载中...