1037. Magic Coupon (25)
正的由大到小排序,负的由小到大排序。分别从头取正数乘以正数,负数乘以负数,一正一负则结束。
#include <iostream>
#include <stdio.h>
#include <string.h>
#include <vector>
#include <map>
#include <stack>
#include <queue>
#include <algorithm>
#include <set>
using namespace std;
const int maxn=1e5+10;
int nc,np;
int a,b,x,y,sum;
int s1[maxn],s2[maxn],s3[maxn],s4[maxn];
bool cmp(int a,int b){return a>b;
}
int main(){scanf("%d",&nc);while(nc--){int tmp;scanf("%d",&tmp);if(tmp>=0) s1[a++]=tmp;else s2[b++]=tmp;}scanf("%d",&np);while(np--){int tmp;scanf("%d",&tmp);if(tmp>=0) s3[x++]=tmp;else s4[y++]=tmp;}sort(s1,s1+a,greater<int>());sort(s3,s3+x,greater<int>());sort(s2,s2+b);sort(s4,s4+y);for(int i=0;i<a&&i<x;i++){// printf("%d %d -- \n",s1[i],s3[i]);sum+=s1[i]*s3[i];}for(int i=0;i<b&&i<y;i++){// printf("%d %d -- \n",s2[i],s4[i]);sum+=s2[i]*s4[i];}printf("%d",sum);return 0;
}
1037. Magic Coupon (25)相关推荐
- 【PAT (Advanced Level) Practice】1037 Magic Coupon (25 分)
题意: 给出两个集合,从这两个集合里面选出数量相同的元素进行一对一相乘,求能够得到的最大乘积之和. 题解: 对每个集合,将正数和负数分开考虑,将每个集合里的整数从大到小排序:将每个集合里的负数从小到大 ...
- 【PAT甲级】1037 Magic Coupon (25 分) C++ 全部AC
题目 大意:给出两组数字,找出两组数字的最大乘积和. 思路:先排序,然后分别从头.从尾对应位置相乘,结果相加.直到相乘为负数为止. 题解 C++ #include<iostream> #i ...
- PAT甲级1037 Magic Coupon:[C++题解]贪心
文章目录 题目分析 题目来源 题目分析 来源:acwing 分析: 贪心. 两个数列分别从大到小排列.从前往后遍历,如果a数组和b数组前k个数都是正数,就相乘累加到res中: 从后往前遍历,如果a数组 ...
- 1037 Magic Coupon
1. 贪心算法题,贪心策略:两组乘子相乘,每个数字至多用一次,希望得到最大的乘积.那么让A组绝对值最大的正数和B组最绝对值最大的正数相乘,次大的和次大的相乘--同样的让A组绝对值最大的负数和B组绝对值 ...
- PAT甲级题目翻译+答案 AcWing(贪心)
1033 To Fill or Not to Fill (25 分) 题意 : 坐标轴上有n个加油站,给出每个加油站的位置和油价格,给出总路程长度和油箱最大容量,以及每升油平均跑多少路,最开始油箱是空 ...
- 刷PAT甲级的各题思路、细节以及遇到的问题记录
1001 A+B Format (20分) 因为一定会用到字符串,而string非常好用,但是用的时候一定要注意不能越界访问,否则会在运行时出现abort() has been called. 100 ...
- PAT题型分类 记录汇总
这篇博客记录了我在跟着<算法笔记>以及习题册<算法笔记 上机实践指南>刷了PAT的题目之后的一些解题方法的总结与心得. 第三章 入门模拟 1. 简单模拟 一般解题思路 这一小节 ...
- PAT (Advanced Level) Practice 题目集合(1001 ~ 1050)(正在更新)
1001 A+B Format (20 分) 题目大意:计算a+b,结果按照西方的那种写数字的方式输出,从三个数一个逗号那种. #include<bits/stdc++.h> using ...
- PAT甲级真题目录(按题型整理)(转自柳神)
转载自:https://www.liuchuo.net/archives/2502?tdsourcetag=s_pcqq_aiomsg 最短路径 1003. Emergency (25)-PAT甲级真 ...
最新文章
- win10 计算机网络密码,win10系统电脑如何查看wifi密码 win10系统电脑查看wifi密码方法【介绍】...
- 后台管理系统怎么实现操作日志原理_springboot角色权限后台管理系统脚手架实战开发教程包含完整源码...
- 《几何与代数导引》习题1.38
- CentOS 7 解决丢失 nginx.pid
- 一文读懂 HTTP/2 特性
- 汇编程序基本原理知识笔记
- php 判断页面加载完,所有ajax执行完且页面加载完判断
- V4L2应用程序框架
- 我的worktools集合们
- python解析sql语句表名_python正则表达式匹配sql语句中的表名
- git将本地项目推送到腾讯开发者平台上的步骤
- 面向对象设计的设计原则
- 黑苹果配置挑选,教你组装一台苹果机
- 使用Python的pandas库操作Excel
- 修改U盘、移动硬盘时提示目标文件夹访问被拒绝的问题解决思路
- 盈透api python封装_[转载]用MT4来接入IB盈透TWS平台交易外汇
- 十年磨一剑,奋进新征程!麒麟信安在上交所科创板成功上市
- brew install oracle,Mac下安装brew
- 算法学习——图之有权图
- iOS程序的Build过程