Submission #168007

# Submission time Handle Problem Language Result Execution time Memory
168007 2019-12-11T06:59:00 Z rzbt Dojave (COCI17_dojave) C++14
0 / 140
1811 ms 97696 KB
#include <bits/stdc++.h>
#define mp make_pair
#define pb push_back
#define F first
#define S second
#define all(x) x.begin(),x.end()
#define MAXN 2000000
typedef long long ll;


using namespace std;

ll niz[MAXN];
ll m,n;
ll nu,ve;
ll bit[MAXN],dubina[MAXN];
ll nula=1,tksor,td;
ll gde[MAXN];
ll r1,r2,r3;
map<ll,ll> mpa;

ll res;
int main()
{
    srand(time(NULL));
    scanf("%lld", &m);
    if(m==1){
        printf("2");
        return 0;
    }
    n=1ll<<m;
    res=n*(n+1)/2;
    for(ll i=1;i<=n;i++){
        scanf("%lld",niz+i);

    }

    for(ll i=1;i<=n;i++){
        gde[niz[i]]=i;
        if(!gde[n-niz[i]-1]){
            //printf("    %lld %lld    %lld\n",i,niz[i],n-niz[i]-1);
            r1=rand();
            r2=rand();
            r3=rand();
            bit[i]=r1 ^(r2<<16ll)^(r3<<32ll);
        }else bit[i]=(1ll<<55ll)-1ll-bit[gde[n-niz[i]-1]];
        auto a=mpa.insert(mp(tksor,1ll));
        if(!a.S)a.F->S++;

        tksor^=bit[i];

        res-=mpa[tksor];
        //printf("  %lld %lld   %lld\n",i,td,n-niz[i]-1);
    }


    printf("%lld",res);
    return 0;
}

Compilation message

dojave.cpp: In function 'int main()':
dojave.cpp:26:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%lld", &m);
     ~~~~~^~~~~~~~~~~~
dojave.cpp:34:14: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
         scanf("%lld",niz+i);
         ~~~~~^~~~~~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB Output is correct
2 Incorrect 2 ms 376 KB Output isn't correct
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 2 ms 376 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 4 ms 632 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 6 ms 860 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 12 ms 1780 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 60 ms 6408 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 57 ms 6364 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 337 ms 24544 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1811 ms 97668 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1775 ms 97696 KB Output isn't correct
2 Halted 0 ms 0 KB -