func_code_string: #include <bits/stdc++.h>   using namespace std;   const int maxn = 1000000 + 20;   int xor_n[maxn];   int p[maxn];   int n;   int q;   void init() {     xor_n[0] = 0;     for (int i = 1; i < maxn; i++) {       xor_n[i] = i ^ xor_n[i - 1];     }   }   int main() {     init();     while (~scanf( %d , &n)) {       q = 0;       for (int i = 1; i <= n; i++) {         scanf( %d , &p[i]);         q = q ^ p[i];       }       for (int i = 1; i <= n; i++) {         int tmp = n / i;         if (n % i == 0) {           if (tmp & 1) q = q ^ xor_n[i - 1];         } else {           if (tmp & 1)             q = q ^ xor_n[i - 1] ^ xor_n[n % i];           else             q = q ^ xor_n[n % i];         }       }       printf( %d n , q);     }     return 0;   }   