Submission #1001199


Source Code Expand

#include <bits/stdc++.h>
#define rep(i,n) for(int i=0;i<(int)(n);i++)
#define rep1(i,n) for(int i=1;i<=(int)(n);i++)
#define all(c) c.begin(),c.end()
#define pb push_back
#define fs first
#define sc second
#define show(x) cout << #x << " = " << x << endl
#define chmin(x,y) x=min(x,y)
#define chmax(x,y) x=max(x,y)
using namespace std;
template<class S,class T> ostream& operator<<(ostream& o,const pair<S,T> &p){return o<<"("<<p.fs<<","<<p.sc<<")";}
template<class T> ostream& operator<<(ostream& o,const vector<T> &vc){o<<"sz = "<<vc.size()<<endl<<"[";for(const T& v:vc) o<<v<<",";o<<"]";return o;}
const int MAX_N=10;
typedef bitset<MAX_N> Bs;
typedef vector<Bs> mat;
int getrank(int N, int M, mat a){
	int ans=0;
	bool used[MAX_N]={};
	rep(j,N){
		int i=0;
		while( (i < M) && (used[i] || !a[i][j]) ) i++;
		if(i == M) continue;
		ans++;
		used[i] = 1;
		rep(k,M) if(!used[k]&&a[k][j]){
			a[k]^=a[i];
		}
	}
	return ans;
}
bool B(int x,int y){return (x>>y)&1;}
	
// }
typedef long long ll;
ll mod=1e9+7;
ll ex(ll x,ll p){
	ll a=1;
	while(p){
		if(p%2) a=a*x%mod;
		x=x*x%mod;
		p/=2;
	}
	return a;
}
ll f(int N){
	ll a=1;
	rep(i,N){
		a=a*(ex(2,N)-ex(2,i))%mod;
	}
	if(a<0) a+=mod;
	return a;
}
ll fs[301];
int main(){
	int N;
	cin>>N;
	mat a(N);
	rep(i,N){
		rep(j,N){
			bool x;
			cin>>x;
			a[i][j]=x;
		}
	}
	int r=getrank(N,N,a);
	rep(i,N+1) fs[i]=f(i);
	ll ans=0;
	for(int j=r;j<=N;j++) ans=(ans+fs[j])%mod;
	cout<<ans<<endl;
}

Submission Info

Submission Time
Task H - AB=C Problem
User sigma425
Language C++14 (GCC 5.4.1)
Score 0
Code Size 1509 Byte
Status WA
Exec Time 134 ms
Memory 256 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 0 / 1500
Status
AC × 1
WA × 1
AC × 6
WA × 20
RE × 16
Set Name Test Cases
Sample example0.txt, example1.txt
All 000.txt, 001.txt, 002.txt, 003.txt, 004.txt, 005.txt, 006.txt, 007.txt, 008.txt, 009.txt, 010.txt, 011.txt, 012.txt, 013.txt, 014.txt, 015.txt, 016.txt, 017.txt, 018.txt, 019.txt, 020.txt, 021.txt, 022.txt, 023.txt, 024.txt, 025.txt, 026.txt, 027.txt, 028.txt, 029.txt, 030.txt, 031.txt, 032.txt, 033.txt, 034.txt, 035.txt, 036.txt, 037.txt, 038.txt, 039.txt, example0.txt, example1.txt
Case Name Status Exec Time Memory
000.txt WA 3 ms 256 KB
001.txt AC 3 ms 256 KB
002.txt WA 3 ms 256 KB
003.txt WA 3 ms 256 KB
004.txt AC 3 ms 256 KB
005.txt WA 3 ms 256 KB
006.txt WA 3 ms 256 KB
007.txt WA 3 ms 256 KB
008.txt AC 3 ms 256 KB
009.txt WA 3 ms 256 KB
010.txt WA 3 ms 256 KB
011.txt WA 3 ms 256 KB
012.txt WA 3 ms 256 KB
013.txt AC 3 ms 256 KB
014.txt RE 121 ms 256 KB
015.txt WA 7 ms 256 KB
016.txt RE 118 ms 256 KB
017.txt WA 15 ms 256 KB
018.txt WA 4 ms 256 KB
019.txt AC 3 ms 256 KB
020.txt RE 120 ms 256 KB
021.txt RE 131 ms 256 KB
022.txt WA 4 ms 256 KB
023.txt RE 134 ms 256 KB
024.txt RE 132 ms 256 KB
025.txt RE 134 ms 256 KB
026.txt RE 131 ms 256 KB
027.txt RE 133 ms 256 KB
028.txt WA 30 ms 256 KB
029.txt RE 131 ms 256 KB
030.txt RE 131 ms 256 KB
031.txt RE 132 ms 256 KB
032.txt WA 30 ms 256 KB
033.txt RE 131 ms 256 KB
034.txt WA 30 ms 256 KB
035.txt WA 19 ms 256 KB
036.txt RE 131 ms 256 KB
037.txt RE 130 ms 256 KB
038.txt WA 29 ms 256 KB
039.txt RE 131 ms 256 KB
example0.txt AC 3 ms 256 KB
example1.txt WA 3 ms 256 KB