zoukankan      html  css  js  c++  java
  • XidianOJ 1213 小V的滑板鞋

    题目描述

    输入

    输出

    摘自题解。。orz我还是太菜了

    #include<bits/stdc++.h>
    using namespace std;
    typedef long long LL;
    #define m first
    #define w second
    const int SIZE=1e5+7;
    
    int c[SIZE];
    struct shoe{
      int w,m;
    } p[SIZE];
    inline int lowbit(int x) {
      return x&-x;
    }
    void update(int x) {
      for(;x<SIZE;x+=lowbit(x))
        ++c[x];
    }
    int query(int x) {
      int res=0;
      for(;x>0;x-=lowbit(x)) res+=c[x];
      return res;
    }
    bool cmp(shoe s1,shoe s2){
      return (s1.m < s2.m);
    }
    int main(){
      freopen("test.in","r",stdin);
      int n,M,W;
      while((scanf("%d%d%d",&n,&M,&W)!= EOF))
      {
        for(int i=0;i<n;++i) scanf("%d",&p[i].m);
        for(int i=0;i<n;++i) scanf("%d",&p[i].w);
        sort(p,p+n,cmp);
        int l=0,r=n-1;
        LL ans=0;
        memset(c,0,sizeof(c));
        for(;r>=0;r--) {
          for(;l<n&&p[l].m+p[r].m<=M;++l)
            update(p[l].w);
          if(W-p[r].w>0) ans+=query(W-p[r].w);
        }
        for(int i=0;i<n;++i)
          if(p[i].m*2<=M&&p[i].w*2<=W)
            ans--;
        ans/=2;
        printf("%lld
    ",ans);
      }
      return 0;
    }
    View Code
  • 相关阅读:
    样式的使用
    样式的使用
    jqurey基础一
    jQuery三天复习.md
    webstorm快捷键大全
    计算机的进制与编码
    2016-4-29HTML标记的使用
    HTML的基本概况
    Apache Maven 入门篇 ( 上 )
    ehcache.xml 分布试缓存
  • 原文地址:https://www.cnblogs.com/ToTOrz/p/7444795.html
Copyright © 2011-2022 走看看