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 ...
随机推荐
- vue & vue router & match bug
vue & vue router & match bug match bugs solution name must be router https://stackoverflow.c ...
- Teadocs & markdown website
Teadocs & markdown website Teadocs 是一款能够帮你快速构建html文档的工具,它基于nodejs编写,并使用markdown来编写文档内容. Teadocs ...
- 可视化埋点 & XPath
可视化埋点 & XPath https://www.w3.org/TR/xpath-full-text-30/ 数据的准确性 采集时机 数据发送策略 full XPath demo XML & ...
- 谷歌地球服务器"失联"的替代方案
2020年11月下旬,谷歌地球开始无法连接.作为谷歌地球的替代方案,推荐使用国产软件"图新地球LSV".网址 http://www.tuxingis.com 下载"图新地 ...
- [转]ubuntu系统重新分区、根目录扩容
原文地址:https://blog.csdn.net/code_segment/article/details/79237500,转载主要方便随时查阅,如有版权要求,请及时联系. gparted是一款 ...
- 数据库分表自增ID问题
.................................................................................................... ...
- redis5.* 手动构建集群
1.集群的概念 集群是一组相互独立的.通过高速网络互联的计算机,它们构成了一个组,并以单一系统的模式加以管理.一个客户与集群相互作用时,集群像是一个独立的服务器.集群配置是用于提高可用性和可缩放性.当 ...
- cobra-强大的CLI应用程序库
cobra介绍 Cobra是一个用于创建强大的现代CLI应用程序的库,也是一个用于生成应用程序和命令文件的程序. Cobra用于许多Go项目,如Kubernetes.Hugo和Github CLI等. ...
- PHP中间件
定义 首先什么是php的中间件? 根据zend-framework中的定义: 所谓中间件是指提供在请求和响应之间的,能够截获请求,并在其基础上进行逻辑处理,与此同时能够完成请求的响应或传递到下一个中间 ...
- 若依管理系统RuoYi-Vue(三):代码生成器原理和实战
历史文章 若依管理系统RuoYi-Vue(一):项目启动和菜单创建 若依管理系统RuoYi-Vue(二):权限系统设计详解 本篇文章将会讲解ruoyi-vue系统下代码生成器的使用.原理分析以及将这部 ...