现在的位置: 首页 > 综合 > 正文

浙大PAT 1037题 1037. Magic Coupon

2018年05月26日 ⁄ 综合 ⁄ 共 533字 ⁄ 字号 评论关闭
#include<stdio.h>
#include<stdlib.h>
int coup[100005],prod[100005];
int cmp(const void* ta,const void* tb ){
    int *a=(int*)ta;
    int *b=(int*)tb;
    return *a-*b;
}
int main(){
    int i,j,nc,np;
    scanf("%d",&nc);
    for(i=0;i<nc;i++){
        scanf("%d",&coup[i]);  
    }
    scanf("%d",&np);
    for(i=0;i<np;i++){
        scanf("%d",&prod[i]);  
    }
    qsort(coup,nc,sizeof(int),cmp);
    qsort(prod,np,sizeof(int),cmp);
    int sum=0;
    for(i=0,j=0;i<nc&&j<np&&coup[i]<0&&prod[j]<0;i++,j++){
        sum+=coup[i]*prod[j];
    }
    for(i=nc-1,j=np-1;i>=0&&j>=0&&coup[i]>0&&prod[j]>0;i--,j--){
        sum+=coup[i]*prod[j];
    }
    printf("%d\n",sum);
    return 0;
}

抱歉!评论已关闭.