Submission #3770399


Source Code Expand

#include <cstdio>
#include <algorithm>
using namespace std;
#define REP(i, n) for(int i = 0; i < (int)(n); ++i)
typedef long long ll;

int vs[200000+10];
int n;
ll ss[200000+10];
ll xs[200000+10];

int main(void) {
  scanf("%d", &n);
  REP(i, n) {
    scanf("%d", &vs[i]);
    xs[i+1] = xs[i] ^ vs[i];
    ss[i+1] = ss[i] + vs[i];
  }

  ll res = 0;
  REP(i, n) {
    int left = i;
    int right = n;
    while(left + 1 < right) {
      int md = (left + right) / 2;
      ll s = ss[md+1] - ss[i];
      ll x = xs[md+1] ^ xs[i];
      if(s == x) {
        left = md;
      } else {
        right = md;
      }
    }
    res += left-i+1;
  }
  
  printf("%lld\n", res);
  
  return 0;
}

Submission Info

Submission Time
Task D - Xor Sum 2
User ush
Language C++14 (GCC 5.4.1)
Score 500
Code Size 727 Byte
Status AC
Exec Time 39 ms
Memory 4096 KB

Compile Error

./Main.cpp: In function ‘int main()’:
./Main.cpp:14:18: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
   scanf("%d", &n);
                  ^
./Main.cpp:16:24: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d", &vs[i]);
                        ^

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 500 / 500
Status
AC × 3
AC × 38
Set Name Test Cases
Sample sample_01.txt, sample_02.txt, sample_03.txt
All sample_01.txt, sample_02.txt, sample_03.txt, sample_01.txt, sample_02.txt, sample_03.txt, subtask_1_01.txt, subtask_1_02.txt, subtask_1_03.txt, subtask_1_04.txt, subtask_1_05.txt, subtask_1_06.txt, subtask_1_07.txt, subtask_1_08.txt, subtask_1_09.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_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_30.txt, subtask_1_31.txt, subtask_1_32.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_01.txt AC 1 ms 128 KB
subtask_1_02.txt AC 1 ms 128 KB
subtask_1_03.txt AC 28 ms 3328 KB
subtask_1_04.txt AC 1 ms 256 KB
subtask_1_05.txt AC 19 ms 2304 KB
subtask_1_06.txt AC 14 ms 1536 KB
subtask_1_07.txt AC 1 ms 256 KB
subtask_1_08.txt AC 15 ms 1664 KB
subtask_1_09.txt AC 24 ms 2688 KB
subtask_1_10.txt AC 27 ms 2944 KB
subtask_1_11.txt AC 29 ms 3328 KB
subtask_1_12.txt AC 36 ms 3968 KB
subtask_1_13.txt AC 10 ms 1280 KB
subtask_1_14.txt AC 8 ms 1024 KB
subtask_1_15.txt AC 13 ms 1664 KB
subtask_1_16.txt AC 1 ms 256 KB
subtask_1_17.txt AC 34 ms 4096 KB
subtask_1_18.txt AC 36 ms 4096 KB
subtask_1_19.txt AC 36 ms 4096 KB
subtask_1_20.txt AC 39 ms 4096 KB
subtask_1_21.txt AC 37 ms 4096 KB
subtask_1_22.txt AC 39 ms 4096 KB
subtask_1_23.txt AC 37 ms 4096 KB
subtask_1_24.txt AC 39 ms 4096 KB
subtask_1_25.txt AC 37 ms 4096 KB
subtask_1_26.txt AC 39 ms 4096 KB
subtask_1_27.txt AC 34 ms 4096 KB
subtask_1_28.txt AC 34 ms 4096 KB
subtask_1_29.txt AC 35 ms 4096 KB
subtask_1_30.txt AC 34 ms 4096 KB
subtask_1_31.txt AC 35 ms 4096 KB
subtask_1_32.txt AC 35 ms 4096 KB