Submission #2527378
Source Code Expand
#include <cstdio>
#include <algorithm>
#define repi(i,a,b) for(int i=(a);i<(b);++i)
#define rep(i,a) repi(i,0,a)
using ll = long long;
constexpr int MAX_N = 100000, mod = 1000000007;
int N, K;
int a[MAX_N];
int dp[2][MAX_N+1];
int main()
{
scanf( "%d%d", &N, &K );
rep( i, N )
scanf( "%d", a+i );
std::sort( a, a+N );
int lim = 0;
dp[0][0] = 1;
rep( i, N )
{
int *prv = dp[i%2], *nxt = dp[(i+1)%2];
std::fill( nxt, nxt+lim+1, 0 );
rep( j, lim+1 )
{
nxt[j] = ((ll)nxt[j]+prv[j]) % mod;
nxt[j^a[i]] = ((ll)nxt[j^a[i]]+prv[j]) % mod;
}
lim |= a[i];
}
printf( "%d\n", dp[N%2][K] );
return 0;
}
Submission Info
Submission Time |
|
Task |
F - Limited Xor Subset |
User |
As_sqr |
Language |
C++14 (GCC 5.4.1) |
Score |
500 |
Code Size |
703 Byte |
Status |
AC |
Exec Time |
10 ms |
Memory |
640 KB |
Compile Error
./Main.cpp: In function ‘int main()’:
./Main.cpp:16:26: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
scanf( "%d%d", &N, &K );
^
./Main.cpp:18:23: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
scanf( "%d", a+i );
^
Judge Result
Set Name |
Sample |
All |
Score / Max Score |
0 / 0 |
500 / 500 |
Status |
|
|
Set Name |
Test Cases |
Sample |
sample_01.txt, sample_02.txt, sample_03.txt |
All |
sample_01.txt, sample_02.txt, sample_03.txt, subtask_1_1.txt, subtask_1_10.txt, subtask_1_11.txt, subtask_1_12.txt, subtask_1_13.txt, subtask_1_14.txt, subtask_1_15.txt, subtask_1_16.txt, subtask_1_17.txt, subtask_1_18.txt, subtask_1_19.txt, subtask_1_2.txt, subtask_1_20.txt, subtask_1_21.txt, subtask_1_22.txt, subtask_1_23.txt, subtask_1_24.txt, subtask_1_25.txt, subtask_1_26.txt, subtask_1_27.txt, subtask_1_28.txt, subtask_1_29.txt, subtask_1_3.txt, subtask_1_30.txt, subtask_1_4.txt, subtask_1_5.txt, subtask_1_6.txt, subtask_1_7.txt, subtask_1_8.txt, subtask_1_9.txt |
Case Name |
Status |
Exec Time |
Memory |
sample_01.txt |
AC |
1 ms |
128 KB |
sample_02.txt |
AC |
1 ms |
128 KB |
sample_03.txt |
AC |
1 ms |
128 KB |
subtask_1_1.txt |
AC |
1 ms |
512 KB |
subtask_1_10.txt |
AC |
1 ms |
256 KB |
subtask_1_11.txt |
AC |
1 ms |
256 KB |
subtask_1_12.txt |
AC |
1 ms |
256 KB |
subtask_1_13.txt |
AC |
1 ms |
256 KB |
subtask_1_14.txt |
AC |
1 ms |
512 KB |
subtask_1_15.txt |
AC |
1 ms |
512 KB |
subtask_1_16.txt |
AC |
1 ms |
256 KB |
subtask_1_17.txt |
AC |
1 ms |
128 KB |
subtask_1_18.txt |
AC |
7 ms |
384 KB |
subtask_1_19.txt |
AC |
4 ms |
256 KB |
subtask_1_2.txt |
AC |
1 ms |
512 KB |
subtask_1_20.txt |
AC |
1 ms |
128 KB |
subtask_1_21.txt |
AC |
1 ms |
128 KB |
subtask_1_22.txt |
AC |
1 ms |
128 KB |
subtask_1_23.txt |
AC |
1 ms |
128 KB |
subtask_1_24.txt |
AC |
1 ms |
128 KB |
subtask_1_25.txt |
AC |
10 ms |
512 KB |
subtask_1_26.txt |
AC |
1 ms |
128 KB |
subtask_1_27.txt |
AC |
1 ms |
128 KB |
subtask_1_28.txt |
AC |
1 ms |
640 KB |
subtask_1_29.txt |
AC |
1 ms |
128 KB |
subtask_1_3.txt |
AC |
1 ms |
512 KB |
subtask_1_30.txt |
AC |
1 ms |
384 KB |
subtask_1_4.txt |
AC |
1 ms |
512 KB |
subtask_1_5.txt |
AC |
1 ms |
512 KB |
subtask_1_6.txt |
AC |
5 ms |
384 KB |
subtask_1_7.txt |
AC |
2 ms |
256 KB |
subtask_1_8.txt |
AC |
1 ms |
128 KB |
subtask_1_9.txt |
AC |
1 ms |
128 KB |