PAT (Advanced Level) Practice 1011 World Cup Betting (20 分) 凌宸1642
PAT (Advanced Level) Practice 1011 World Cup Betting (20 分) 凌宸1642
题目描述:
With the 2010 FIFA World Cup running, football fans the world over were becoming increasingly excited as the best players from the best teams doing battles for the World Cup trophy in South Africa. Similarly, football betting fans were putting their money where their mouths were, by laying all manner of World Cup bets.
Chinese Football Lottery provided a "Triple Winning" game. The rule of winning was simple: first select any three of the games. Then for each selected game, bet on one of the three possible results -- namely W for win, T for tie, and L for lose. There was an odd assigned to each result. The winner's odd would be the product of the three odds times 65%.
For example, 3 games' odds are given as the following:
W T L
1.1 2.5 1.7
1.2 3.1 1.6
4.1 1.2 1.1
To obtain the maximum profit, one must buy W for the 3rd game, T for the 2nd game, and T for the 1st game. If each bet takes 2 yuans, then the maximum profit would be (4.1×3.1×2.5×65%−1)×2=39.31 yuans (accurate up to 2 decimal places).
译: 随着2010年国际足联世界杯的举办,世界各地的球迷都变得越来越兴奋,因为最好的球队的最好的球员正在南非为世界杯奖杯而战。同样地,足球博彩迷们也把他们的钱放在了他们的嘴边,通过各种各样的世界杯赌注。
中国足球彩票提供了“三连胜”游戏。获胜的规则很简单:首先选择三场比赛中的任何一场。然后对每一个选定的游戏,在三个可能的结果中的一个下注——即 W 代表赢,T 代表平,L 代表输。每个结果都有一个奇数。胜利者的奇数是三个赔率乘以 65% 的乘积。
例如,3 场比赛的赔率如下:
W T L
1.1 2.5 1.7
1.2 3.1 1.6
4.1 1.2 1.1
为了获得最大的利润,第三局必须买 W ,第二局必须买 T ,第一局必须买 T。如果每次下注 2 元,则最大利润为(4.1 × 3.1 × 2.5 × 65% − 1 )× 2 = 39.31 元(精确到小数点后 2 位)。
Input Specification (输入说明):
Each input file contains one test case. Each case contains the betting information of 3 games. Each game occupies a line with three distinct odds corresponding to W, T and L.
译:每个输入文件包含一个测试用例,每个用例包含三个游戏的投注赔率信息。每场比赛的三个不同的赔率对应的W ,T 和 L 占一行。
Output Specification (输出说明):
For each test case, print in one line the best bet of each game, and the maximum profit accurate up to 2 decimal places. The characters and the number must be separated by one space.
Output Specification (输出说明):
For each test case, print in one line the best bet of each game, and the maximum profit accurate up to 2 decimal places. The characters and the number must be separated by one space.
译:对于每个测试用例,在一行中打印每个游戏的最佳堵住,最大利润精确到小数点后两位。字符和数字之间必须用空格隔开。
Sample Input (样例输入):
1.1 2.5 1.7
1.2 3.1 1.6
4.1 1.2 1.1
Sample Output (样例输出):
T T W 39.31
The Idea:
一行数里面找最大数,我很懒,我喜欢 map ,利用 double 类型的赔率做 key ,char 类型的 W ,T , L , 做 value ,每次输入在 map 中插入其对应的 键值对。然后取第一个元素即可。第一个元素的 key 是需要计算的赔率,第一个元素的 value 是需要输出的 W , T , L 中的一个。每次输入之后立即输出,记得 map 需要清空。
The Codes:
#include<bits/stdc++.h>
using namespace std ;
map<double , char , greater<double> > mp ; // 按照关键字 降序 排列的 map
map<double , char , greater<double> >::iterator it ;
int main(){
double w , t , l , sum = 1.0 ;
for(int i = 0 ; i < 3 ; i ++){
mp.clear() ; // 清空 map
cin >> w >> t >> l ;
mp[w] = 'W' ;
mp[t] = 'T' ;
mp[l] = 'L' ;
it = mp.begin() ;
sum *= it -> first ; // 计算最大利润需要选择的赔率
printf("%c " , it -> second) ; // 输出本场比赛利润最大的对应的赌注
}
printf("%.2f " , sum * 1.3 - 2) ; // 计算最大利润并输出
return 0 ;
}
PAT (Advanced Level) Practice 1011 World Cup Betting (20 分) 凌宸1642的更多相关文章
- PAT (Advanced Level) Practice 1027 Colors in Mars (20 分) 凌宸1642
PAT (Advanced Level) Practice 1027 Colors in Mars (20 分) 凌宸1642 题目描述: People in Mars represent the c ...
- PAT (Advanced Level) Practice 1019 General Palindromic Number (20 分) 凌宸1642
PAT (Advanced Level) Practice 1019 General Palindromic Number (20 分) 凌宸1642 题目描述: A number that will ...
- PAT (Advanced Level) Practice 1005 Spell It Right (20 分) 凌宸1642
PAT (Advanced Level) Practice 1005 Spell It Right (20 分) 凌宸1642 题目描述: Given a non-negative integer N ...
- PAT (Advanced Level) Practice 1001 A+B Format (20 分) 凌宸1642
PAT (Advanced Level) Practice 1001 A+B Format (20 分) 凌宸1642 题目描述: Calculate a+b and output the sum i ...
- PAT (Advanced Level) Practice 1011 World Cup Betting (20 分) (找最值)
With the 2010 FIFA World Cup running, football fans the world over were becoming increasingly excite ...
- 【PAT Advanced Level】1011. World Cup Betting (20)
简单模拟题,遍历一遍即可.考察输入输出. #include <iostream> #include <string> #include <stdio.h> #inc ...
- PAT (Advanced Level) Practice 1019 General Palindromic Number (20 分) (进制转换,回文数)
A number that will be the same when it is written forwards or backwards is known as a Palindromic Nu ...
- PAT (Advanced Level) Practice 1027 Colors in Mars (20 分)
People in Mars represent the colors in their computers in a similar way as the Earth people. That is ...
- PAT (Advanced Level) Practice 1054 The Dominant Color (20 分)
Behind the scenes in the computer's memory, color is always talked about as a series of 24 bits of i ...
随机推荐
- Python 2 to Python 3 convert
Python 2 to Python 3 convert 2to3, 自动将 Python 2 代码转为 Python 3 代码 https://docs.python.org/zh-cn/2/lib ...
- SVG image tag
SVG image tag https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/SVG_Image_Tag <?xml versi ...
- WiFi 测速
WiFi 测速 shit 联通 20M => 电信 20M ? https://zhuanlan.zhihu.com/p/86140645 shit 房东 中国电信网络测速 50M http:/ ...
- AI & HR
AI & HR 数字化人才画像 人力资本数字化管理 通过"AI+数据+专家"的手段,将"数字化人才画像"作为服务起点与信息入口,扩展提供全场景的数字化人 ...
- VSCode & disable telemetry reporting
VSCode & disable telemetry reporting https://code.visualstudio.com/docs/supporting/faq#_how-to-d ...
- ES6 & tagged-template-literals & template strings
ES6 & tagged-template-literals & template strings tagged template https://developer.mozilla. ...
- 链表算法题二,还原题目,用debug调试搞懂每一道题
文章简述 大家好,本篇是个人的第4篇文章. 承接第3篇文章<开启算法之路,还原题目,用debug调试搞懂每一道题>,本篇文章继续分享关于链表的算法题目. 本篇文章共有5道题目 一,反转链表 ...
- CentOS7 下Docker最新入门教程 超级详细 (安装以及简单的使用)
转载https://blog.csdn.net/wzsy_ll/article/details/82866627 1.为什么使用Docker(本人) 最近总是频繁的在新服务器发布项目, 每次发布都需要 ...
- Java开发不懂Docker,学尽Java也枉然,阿里P8架构师手把手带你玩转Docker实战
转: Java开发不懂Docker,学尽Java也枉然,阿里P8架构师手把手带你玩转Docker实战 Docker简介 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一 ...
- RabbitMQ初步使用,简洁介绍。
RabbitMQ是一种越来越流行的开源,快速消息代理,它使用Erlang编写并基于Open Telecom Platform框架构建.它实现了高级消息队列协议(AMQP),用于在进程,应用程序和服务器 ...