zoukankan      html  css  js  c++  java
  • hdu 4288 Coder 一个很水的版本 >_<

    一个很水的版本  >_<

    直接vector操作,修改时直接lower_bound找到位置,然后add操作时是a.insert(),del操作时是a.erase(),询问时直接枚举求和。。。

    6778229 2012-09-16 21:57:16 Accepted 4288 6843MS 1060K 1154 B G++ yejinru
    View Code
     1 #include <iostream>
     2 #include <vector>
     3 #include <cstring>
     4 #include <cstdio>
     5 #include <algorithm>
     6 
     7 using namespace std;
     8 
     9 char s[5];
    10 int n;
    11 vector<int> a;
    12 
    13 int main(){
    14     //freopen("sum.in","r",stdin);
    15     int len,val;
    16     vector<int>::iterator it;
    17     while(cin>>n){
    18         len = 0;
    19         a.clear();
    20         while(n--){
    21             scanf("%s",s);
    22             if(s[0]=='s'){
    23                 long long ans = 0;
    24                 for(int i=2;i<len;i+=5)
    25                     ans += a[i];
    26                 cout<<ans<<endl;
    27             }
    28             else if(s[0]=='a'){
    29                 len++;
    30                 scanf("%d",&val);
    31                 it = lower_bound(a.begin(),a.end(),val);
    32                 a.insert(it,val);
    33             }
    34             else{
    35                 len--;
    36                 scanf("%d",&val);
    37                 it = lower_bound(a.begin(),a.end(),val);
    38                 a.erase(it);
    39             }
    40         }
    41     }
    42     return 0;
    43 }
  • 相关阅读:
    java中的单例模式
    数组的冒泡排序
    2019年总结—即将而立之年的90后
    圣诞节开启博客之旅
    分布式多线程的Lock示例
    抽象工厂模式
    观察者模式
    建造者模式
    外观模式(Facade)
    模板方法模式
  • 原文地址:https://www.cnblogs.com/yejinru/p/2687942.html
Copyright © 2011-2022 走看看