在火星上有个魔法商店,提供魔法优惠券。每个优惠劵上印有一个整数面值K,表示若你在购买某商品时使用这张优惠劵,可以得到K倍该商品价值的回报!该商店还免费赠送一些有价值的商品,但是如果你在领取免费赠品的时候使用面值为正的优惠劵,则必须倒贴给商店K倍该商品价值的金额…… 但是不要紧,还有面值为负的优惠劵可以用!(真是神奇的火星)

例如,给定一组优惠劵,面值分别为1、2、4、-1;对应一组商品,价值为火星币M7、6、-2、-3,其中负的价值表示该商品是免费赠品。我们可以将优惠劵3用在商品1上,得到M28的回报;优惠劵2用在商品2上,得到M12的回报;优惠劵4用在商品4上,得到M3的回报。但是如果一不小心把优惠劵3用在商品4上,你必须倒贴给商店M12。同样,当你一不小心把优惠劵4用在商品1上,你必须倒贴给商店M7。

规定每张优惠券和每件商品都只能最多被使用一次,求你可以得到的最大回报。

输入格式:
输入有两行。第一行首先给出优惠劵的个数N,随后给出N个优惠劵的整数面值。第二行首先给出商品的个数M,随后给出M个商品的整数价值。N和M在[1, 106​​ ]之间,所有的数据大小不超过230 ,数字间以空格分隔。

输出格式:
输出可以得到的最大回报。

输入样例:

4 1 2 4 -1
4 7 6 -2 -3

输出样例:

43

解题思路:
贪心法,选择最优策略。显然,一个正数一个负数不可取。都为正数时,选择两个最大数最优,两负数时,选择两个最小的数最优。
如例题:

代码:

#include<iostream>
#include<algorithm>
#include<vector>
using namespace std;
int main()
{vector<int>a,b;int c,d,e,f,g,sum=0;cin>>c;while(c--){cin>>d;a.push_back(d);}cin>>c;while(c--){cin>>d;b.push_back(d);}sort(a.begin(),a.end());//升序排序sort(b.begin(),b.end());for(c=0;c<a.size()&&c<b.size();c++)//负数乘负数{if(a[c]<0&&b[c]<0)sum+=a[c]*b[c];}sort(a.begin(),a.end(),greater<int>());//降序排序sort(b.begin(),b.end(),greater<int>());for(c=0;c<a.size()&&c<b.size();c++)//正数乘正数{if(a[c]>0&&b[c]>0)sum+=a[c]*b[c];}cout<<sum<<endl;
}

基础实验7-2.1 魔法优惠券 (贪心)相关推荐

  1. 数据结构PTA 基础实验7-2.1 魔法优惠券

    基础实验7-2.1 魔法优惠券 题目 解法 题目 在火星上有个魔法商店,提供魔法优惠券.每个优惠劵上印有一个整数面值K,表示若你在购买某商品时使用这张优惠劵,可以得到K倍该商品价值的回报!该商店还免费 ...

  2. 基础实验 7-2.1 魔法优惠券(25 分)

    在火星上有个魔法商店,提供魔法优惠券.每个优惠劵上印有一个整数面值 K,表示若你在购买某商品时使用这张优惠劵,可以得到K倍该商品价值的回报!该商店还免费赠送一些有价值的商品,但是如果你在领取免费赠品的 ...

  3. 7-39 魔法优惠券

    题目链接: 传送门 题目描述: 在火星上有个魔法商店,提供魔法优惠券.每个优惠劵上印有一个整数面值K,表示若你在购买某商品时使用这张优惠劵,可以得到K倍该商品价值的回报!该商店还免费赠送一些有价值的商 ...

  4. [nRF51822] 8、基础实验代码解析大全 · 实验11 - PPI

    前一篇分析了前十个基础实验的代码,从这里开始分析后十个~ 一.PPI原理: PPI(Programmable Peripheral Interconnect),中文翻译为可编程外设互连. 在nRF51 ...

  5. 计算机应用基础实验报告册,计算机应用基础实验报告(flash)

    实 验 报 告 计算机应用基础实验报告 姓名 班级 学号 实验日期 课程名称 计算机应用基础 指导教师 成绩 实验名称:简单动画制作 实验目的: 掌握逐帧动画.形状渐变动画.运动渐变动画的制作方法 实 ...

  6. Grove Beginner Kits基础实验 Arduino

    简 介: 本文就Arduino的基础实验以及与ESP8266连接进行了初步实验.并基于此,给出了基于人脸识别只能门锁系统的硬件设计. 关键词: Arduino,ESP8266 §01 Arduino ...

  7. ESP8266的一些MicroPython基础实验

    文章目录 ▌ESP8266模块 1.模块基本信息 2.模块管脚配置 ▌02 基础实验 1.测试GPIO (1)ON_OFF实验 (2)端口中断 2.测试PWM 3.测试ADC (1)基础的ADC (2 ...

  8. 计算机网络基础实验简答题,计算机网络基础实验报告.doc

    计算机网络基础实验报告 计算机科学与技术系 实 验 报 告专业名称课程名称计算机网络基础项目名称局域网组网实验班 级学 号姓 名同组人员实验日期实验目的与要求: (一).实验目的: 通过组建局域网,了 ...

  9. 大学计算机基础实验指导试题,(大学计算机基础实验指导)模拟试题(二)参考答案...

    (大学计算机基础实验指导)模拟试题(二)参考答案 (非计算机专业A卷) 一.填空题(共20分,每空1分) 1.电子管2.分时系统.实时系统3..txt 4.主码 5.实体.参照.用户定义6.同轴电缆. ...

最新文章

  1. magic系统将来能升鸿蒙,荣耀30和V30将首批搭载Magic UI 4.0 后续可升级鸿蒙系统
  2. 什么叫侧面指纹识别_前面侧面还是背面?手机指纹识别放哪儿合适
  3. 【C++进阶】利用重载二元运算符改进平面向量类Vec2D
  4. POM.xml红叉解决方法
  5. java面试题28 牛客 下面有关java classloader说法错误的是?
  6. 关于msi格式的程序包的安装
  7. 【wpf】在win10系统上弹出toast和notification
  8. idea设置类多行显示_IDEA 常用设置
  9. C语言文件读写操作总结
  10. 三年级能用计算机吗,三年级上册第6课:我用计算机写作文
  11. 计算机网络/操作系统
  12. 深圳试行“智能行人过街系统”,行人违规将被“拉出来示众”
  13. 一分钟了解TCP/IP网络通信协议
  14. Sapphire 2022 for Mac/win(AE/PR视觉特效和转场蓝宝石插件)
  15. h3c交换机配置远程管理_h3c 交换机配置VLAN和远程管理
  16. Linux DMA驱动构架分析
  17. using index
  18. 【代码审计】那些代码审计的思路.md
  19. PYTHON库,让你相见恨晚的第三方库
  20. 百度地图自定义标点。

热门文章

  1. 密码学速查笔记(一)-- 分组对称加密
  2. 高中数学联赛不等式专题:题目1
  3. 旋转目标检测复现-yolov5-obb
  4. 顶像滑块/通用滑块识别/文字点选/图标点选/推理/OCR文字识别
  5. 【Flutter】返回首页
  6. 今天给大家介绍一下关于锂离子电池的负极材料选择
  7. 星盘软件测试自学,谁能帮我解读一下我的星盘_测测星座app可以测什么?
  8. [4G+5G专题-144]: 测试-频谱分析仪工作原理与测试结果分析
  9. android 屏幕最小宽度_最小宽度360dp Android屏幕适配—被偷走的dp - 硬件设备 - 服务器之家...
  10. 广受青睐的题材---蒸汽朋克[Steampunk](转)