UVa 11369 - Shopaholic
2016-04-05 19:00
323 查看
题意:
又到了剁手的季节,购物狂们开始行动,超市也开始行动,规定是:每买三件,可以省去1件最便宜的价格。
给出买的商品数,和每个商品的价值,求出购物狂一共赚了多少钱,呵呵。
思路:
把数据从大到小排序,把3的倍数的商品价值相加,就是答案。
实现:重写C++STL里的sort()函数的比较函数 bool compare();
代码:
又到了剁手的季节,购物狂们开始行动,超市也开始行动,规定是:每买三件,可以省去1件最便宜的价格。
给出买的商品数,和每个商品的价值,求出购物狂一共赚了多少钱,呵呵。
思路:
把数据从大到小排序,把3的倍数的商品价值相加,就是答案。
实现:重写C++STL里的sort()函数的比较函数 bool compare();
代码:
#include <iostream> #include <cstring> #include <cstdio> #include <cstdlib> #include <algorithm> using namespace std; #define MAXN 20000+10 bool cmp(int a,int b){ if(a>b)return true; else return false; } class Shopaholic{ private: int thingsNum; int price[MAXN]; int ansNum; public: void init(); void process(); }; void Shopaholic::init(){ memset(price,0,sizeof(price)); ansNum = 0; } void Shopaholic::process(){ int cases; cin>>cases; while(cases--){ init(); cin>>thingsNum; for(int i = 0;i < thingsNum;i++){ cin>>price[i]; } sort(price,price + thingsNum,cmp); for(int i = 2;i < thingsNum;i += 3){ ansNum += price[i]; } cout<<ansNum<<endl; } } int main() { #ifndef ONLINE_JUDGE freopen("D:\\acm.txt","r",stdin); #endif // ONLINE_JUDGE Shopaholic shopaholic; shopaholic.process(); return 0; }
相关文章推荐
- Scripts after the Linux server installation
- linux文件系统介绍
- nginx字体文件配置
- opencv之Mat图像左右移
- openwrt开发<1>内核编译
- Intent常用flag之FLAG_ACTIVITY_CLEAR_TOP
- linux shell中单引号、双引号和没有引号的区别
- Hadoop基础教程之搭建开发环境及编写Hello World
- Hadoop-2.7.1完全分布式集群搭建完整版
- I.MX6 Linux 自动获取AR1020 event input节点
- Linux文件重点概念
- Linux Web服务器网站故障分析常用的命令
- AOP笔记
- docker中nginx容器和php容器混合运行
- Open Investor简介
- 那些德艺双馨的网站列表-updating
- tomcat配置文件之Server.xml
- On linux start jenkins on specific port 80: java.net.SocketException: Permission denied
- Linux LVM 创建、删除、扩展
- linux开关机啪啪响(pop noise)的解决方案