Cod sursa(job #1582323)

Utilizator info1972Marius info1972 Data 27 ianuarie 2016 20:36:38
Problema Secventa Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.5 kb
#include <cstdio>
#define k 8192
using namespace std;
long long int n,m,st[16000001],i,j,vf,a[8195],nr,val;
int main()
{
freopen("secv6.in","r",stdin);
freopen("secv6.out","w",stdout);
scanf("%lld",&n);
if (k<=n) m=k;
     else m=n;
for (i=0;i<m;i++) scanf("%lld",&a[i]);
for (i=0;i<n;i++)
{
val=i+(a[i/k]^a[i%k]);
while (vf>0 && st[vf]<=val)
   {
   nr++;
   vf--;
   }
if (vf==0) st[++vf]=val;
      else {
            nr++;
            st[++vf]=val;
           }
}
printf("%lld",nr);
}