Submission #1725731
Source Code Expand
#include <bits/stdc++.h> #include <ext/pb_ds/assoc_container.hpp> #include <ext/pb_ds/tree_policy.hpp> using namespace std; using namespace __gnu_pbds; #define fi first #define se second #define mp make_pair #define pb push_back #define fbo find_by_order #define ook order_of_key typedef long long ll; typedef pair<ll,ll> ii; typedef vector<int> vi; typedef long double ld; typedef tree<int, null_type, less<int>, rb_tree_tag, tree_order_statistics_node_update> pbds; typedef set<int>::iterator sit; typedef map<int,int>::iterator mit; typedef vector<int>::iterator vit; const int MOD = 1e9 + 7; ll dp[101][256][101]; ll a[101]; ll fact[101]; int main() { ios_base::sync_with_stdio(0); cin.tie(0); int n, x; cin>>n>>x; for(int i = 0; i < n; i++) { cin >> a[i]; } fact[0] = 1; for(int i = 1; i <= n; i++) { fact[i] = (ll(fact[i-1])*i)%MOD; } dp[0][0][0] = 1; dp[0][a[0]][1] = 1; for(int i = 1; i < n; i++) { for(int j = 0; j <= 255; j++) { dp[i][0][0] = 1; for(int k = 1; k <= n; k++) { dp[i][j][k] = (dp[i-1][j][k]+dp[i-1][(j^a[i])][k-1])%MOD; } } } ll ans = 0; for(int i = 1; i <= n; i++) { ans = (ans + (fact[i]*dp[n-1][x][i])%MOD)%MOD; } cout<<ans<<'\n'; }
Submission Info
Submission Time | |
---|---|
Task | C - Solving XOR-Puzzles |
User | vjudge3 |
Language | C++14 (GCC 5.4.1) |
Score | 400 |
Code Size | 1215 Byte |
Status | AC |
Exec Time | 12 ms |
Memory | 20224 KB |
Judge Result
Set Name | Sample | Subtask1 | Subtask2 | Subtask3 | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 50 / 50 | 170 / 170 | 180 / 180 | ||||||||
Status |
|
|
|
|
Set Name | Test Cases |
---|---|
Sample | sample_1.txt, sample_2.txt, sample_4.txt |
Subtask1 | sample_1.txt, sample_2.txt, sub1_in1.txt, sub1_in2.txt, sub1_in3.txt, sub1_in4.txt, sub1_in5.txt, sub1_in6.txt, sub1_in7.txt |
Subtask2 | sample_1.txt, sample_2.txt, sub1_in1.txt, sub1_in2.txt, sub1_in3.txt, sub1_in4.txt, sub1_in5.txt, sub1_in6.txt, sub1_in7.txt, sub2_in1.txt, sub2_in2.txt, sub2_in3.txt, sub2_in4.txt, sub2_in5.txt, sub2_in6.txt, sub2_in7.txt, sub2_in8.txt, sub2_in9.txt |
Subtask3 | sample_1.txt, sample_2.txt, sample_4.txt, sub1_in1.txt, sub1_in2.txt, sub1_in3.txt, sub1_in4.txt, sub1_in5.txt, sub1_in6.txt, sub1_in7.txt, sub2_in1.txt, sub2_in2.txt, sub2_in3.txt, sub2_in4.txt, sub2_in5.txt, sub2_in6.txt, sub2_in7.txt, sub2_in8.txt, sub2_in9.txt, sub3_in1.txt, sub3_in2.txt, sub3_in3.txt, sub3_in4.txt, sub3_in5.txt, sub3_in6.txt, sub3_in7.txt, sub3_in8.txt, sub3_in9.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
sample_1.txt | AC | 2 ms | 640 KB |
sample_2.txt | AC | 1 ms | 640 KB |
sample_4.txt | AC | 3 ms | 6144 KB |
sub1_in1.txt | AC | 2 ms | 896 KB |
sub1_in2.txt | AC | 2 ms | 896 KB |
sub1_in3.txt | AC | 2 ms | 896 KB |
sub1_in4.txt | AC | 2 ms | 896 KB |
sub1_in5.txt | AC | 2 ms | 896 KB |
sub1_in6.txt | AC | 2 ms | 896 KB |
sub1_in7.txt | AC | 2 ms | 896 KB |
sub2_in1.txt | AC | 3 ms | 4096 KB |
sub2_in2.txt | AC | 3 ms | 4096 KB |
sub2_in3.txt | AC | 3 ms | 4096 KB |
sub2_in4.txt | AC | 3 ms | 4096 KB |
sub2_in5.txt | AC | 3 ms | 4096 KB |
sub2_in6.txt | AC | 3 ms | 4096 KB |
sub2_in7.txt | AC | 3 ms | 4096 KB |
sub2_in8.txt | AC | 3 ms | 4096 KB |
sub2_in9.txt | AC | 3 ms | 4096 KB |
sub3_in1.txt | AC | 12 ms | 20224 KB |
sub3_in2.txt | AC | 12 ms | 20224 KB |
sub3_in3.txt | AC | 12 ms | 20224 KB |
sub3_in4.txt | AC | 12 ms | 20224 KB |
sub3_in5.txt | AC | 12 ms | 20224 KB |
sub3_in6.txt | AC | 12 ms | 20224 KB |
sub3_in7.txt | AC | 12 ms | 20224 KB |
sub3_in8.txt | AC | 12 ms | 20224 KB |
sub3_in9.txt | AC | 12 ms | 20224 KB |