zoukankan      html  css  js  c++  java
  • 【PAT甲级】1037 Magic Coupon (25 分)

    题意:

    输入一个正整数N(<=1e5),接下来输入N个整数。再输入一个正整数M(<=1e5),接下来输入M个整数。每次可以从两组数中各取一个,求最大的两个数的乘积的和。

    AAAAAccepted code:

     1 #define HAVE_STRUCT_TIMESPEC
     2 #include<bits/stdc++.h>
     3 using namespace std;
     4 long long a[100007],b[100007];
     5 long long c[100007],d[100007];
     6 int cnta,cntb,cntc,cntd;
     7 int main(){
     8     int n,m;
     9     cin>>n;
    10     long long x;
    11     for(int i=1;i<=n;++i){
    12         cin>>x;
    13         if(x>0)
    14             a[++cnta]=x;
    15         else if(x<0)
    16             b[++cntb]=x;
    17     }
    18     cin>>m;
    19     for(int i=1;i<=m;++i){
    20         cin>>x;
    21         if(x>0)
    22             c[++cntc]=x;
    23         else if(x<0)
    24             d[++cntd]=x;
    25     }
    26     long long ans=0;
    27     sort(a+1,a+1+cnta);
    28     sort(b+1,b+1+cntb);
    29     sort(c+1,c+1+cntc);
    30     sort(d+1,d+1+cntd);
    31     for(int i=1;i<=min(cntb,cntd);++i)
    32         ans+=b[i]*d[i];
    33     for(int i=cnta,j=cntc;i&&j;--i,--j)
    34         ans+=a[i]*c[j];
    35     cout<<ans;
    36     return 0;
    37 }
    保持热爱 不懈努力 不试试看怎么知道会失败呢(划掉) 世上无难事 只要肯放弃(划掉)
  • 相关阅读:
    vs2010中如何编译dll
    EM图解
    二级指针代替二维数组传入参数
    常見算法的穩定性
    Opencv +vs2010的问题之0x000007b
    Linux C程序设计大全之gdb学习
    makefile学习
    python之如何share你的module
    socket与http的区别
    最完美的单例实现
  • 原文地址:https://www.cnblogs.com/ldudxy/p/11551788.html
Copyright © 2011-2022 走看看