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
AC × 3
AC × 33
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