zoukankan      html  css  js  c++  java
  • 1037 Magic Coupon (25 分)

    水题~。

    魔鬼变量名。

    vector<int> positive_coupon,negative_coupon;
    vector<int> positive_product,negative_product;
    int nc,np;
    
    int main()
    {
        cin>>nc;
        for(int i=0;i<nc;i++)
        {
            int x;
            cin>>x;
            if(x > 0) positive_coupon.pb(x);
            else negative_coupon.pb(x);
        }
    
        sort(positive_coupon.begin(),positive_coupon.end(),greater<int>());
        sort(negative_coupon.begin(),negative_coupon.end());
    
        cin>>np;
        for(int i=0;i<np;i++)
        {
            int x;
            cin>>x;
            if(x > 0) positive_product.pb(x);
            else negative_product.pb(x);
        }
    
        sort(positive_product.begin(),positive_product.end(),greater<int>());
        sort(negative_product.begin(),negative_product.end());
    
        int res=0;
        int cnt=min(positive_coupon.size(),positive_product.size());
        for(int i=0;i<cnt;i++)
            res+=positive_coupon[i]*positive_product[i];
    
        cnt=min(negative_coupon.size(),negative_product.size());
        for(int i=0;i<cnt;i++)
            res+=negative_coupon[i]*negative_product[i];
    
        cout<<res<<endl;
        //system("pause");
        return 0;
    }
    

    咳咳,根据晴神代码作了简化:

    const int N=1e5+10;
    int coupon[N];
    int product[N];
    int nc,np;
    
    int main()
    {
        cin>>nc;
        for(int i=0;i<nc;i++) cin>>coupon[i];
        sort(coupon,coupon+nc);
    
        cin>>np;
        for(int i=0;i<np;i++) cin>>product[i];
        sort(product,product+np);
    
        int res=0;
        int i=0,j=0;
        while(i<nc && j<np && coupon[i] < 0 && product[j] < 0)
        {
            res+=coupon[i]*product[j];
            i++,j++;
        }
    
        i=nc-1,j=np-1;
        while(i>=0 && j>=0 && coupon[i] > 0 && product[j] > 0)
        {
            res+=coupon[i]*product[j];
            i--,j--;
        }
    
        cout<<res<<endl;
        //system("pause");
        return 0;
    }
    
  • 相关阅读:
    Course Schedule II
    Vim笔记
    python programming
    暴风电视刷机教程
    python asyncio
    sqlalchemy lock and atomic
    rust学习(二)
    rust-vmm 学习(二)
    e3s10 网络管理
    打造VIM成为IDE - nerdtree
  • 原文地址:https://www.cnblogs.com/fxh0707/p/14414017.html
Copyright © 2011-2022 走看看