zoukankan      html  css  js  c++  java
  • HDU4288 Coder

     1 #include <iostream>
     2 #include <cstdio>
     3 #include <cstring>
     4 #include <algorithm>
     5 #define lson l,mid,i<<1
     6 #define rson mid+1,r,i<<1|1
     7 using namespace std;
     8 const int Ni =100010;
     9 int num[Ni],x[Ni];
    10 char op[Ni];
    11 int tn[Ni*3];
    12 long long tree[Ni*3][5];
    13 void pushup(int k)
    14 {
    15     int t=tn[k<<1];
    16     for(int i=0;i<5;i++) tree[k][i]=tree[k<<1][i];
    17     for(int i=0;i<5;i++) tree[k][(i+t)%5]+=tree[k<<1|1][i];
    18     tn[k]=tn[k<<1]+tn[k<<1|1];
    19 }
    20 void update(int q,int l,int r,int i)
    21 {
    22     if(l==r)
    23     {
    24         tn[i]^=1;
    25         tree[i][0]=tn[i]? q:0;
    26         return ;
    27     }
    28     int mid=(l+r)>>1;
    29     if(q<=x[mid]) update(q,lson);
    30     else update(q,rson);
    31     pushup(i);
    32 }
    33 int main()
    34 {
    35     int a,i,j,cnt,n;
    36     char str[5];
    37     while(~scanf("%d",&n))
    38     {
    39         cnt=0;
    40         memset(tn,0,sizeof(tn));
    41         memset(tree,0,sizeof(tree));
    42         for(i=0;i<n;i++)
    43         {
    44             scanf("%s",str);
    45             op[i]=str[0];
    46             if(str[0]!='s')
    47             {
    48                 scanf("%d",&a);
    49                 num[i]=x[cnt++]=a;
    50             }
    51         }
    52         sort(x,x+cnt);
    53         for(j=0,i=1;i<cnt;i++) if(x[j]!=x[i]) x[++j]=x[i];
    54         cnt=j;
    55         for(i=0;i<n;i++)
    56         {
    57             if(op[i]=='s') printf("%I64d\n",tree[1][2]);
    58             else  update(num[i],0,cnt,1);
    59         }
    60     }
    61     return 0;
    62 }
  • 相关阅读:
    2018-8-10-win10-uwp-重启软件
    jquery动画滑入滑出
    jquery类操作
    jquery类操作
    jquery手风琴
    jquery突出显示
    jquery隔行变色
    jquery下拉菜单
    jquery筛选选择器
    jquery过滤选择器
  • 原文地址:https://www.cnblogs.com/qijinbiao/p/2690352.html
Copyright © 2011-2022 走看看