Parlay Wagering
http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=2833
题意:讲述了一种投小钱赢大钱的赌博方式,初始投入钱m,如果本局赢了,将钱连本带利投入下一局继续赌博。如果本局输了,之前得到的钱全部清零,如果打平,本局不赢钱。每局投入的钱数不能大于一百万,计算连本带利赢得的钱数,如果大于一百万则按赢了一百万。输入t组,然后是初始投入的钱m与赌博的局数n。在n局中,给出每局的Money Line,用于作为比率计算本局赢得的钱数。如果Money Line 大于0,则比率为Money Line/100,结果截取3位小数;否则,比率为100/Money Line,结果截取3位小数。每局赢得的钱数(截取两位小数)=当前投入的赌注*比率。最后得到的钱整数部分按每3位输出一个“,”的形式。
#include <stdio.h>
#include <string.h>
#include <iostream>
#include <algorithm>
#include <stack>
using namespace std;
const int N=;
#define LL long long
struct ndoe
{
LL x;
string s;
} a[N];
char ss[N];
int main()
{
int t;
scanf("%d",&t);
while(t--)
{
double m;
int n;
scanf("%lf%d",&m,&n);
for (int i = ; i < n; i++)
{
cin>>a[i].x>>a[i].s;
}
LL sum = m*;
for (int i = ; i < n; i++)
{
if (a[i].s=="Tie")
continue;
else if (a[i].s=="Loss")
{
sum = ;
continue;
}
else
{
LL t1,t2;
if (a[i].x > )
{
t1 = a[i].x*;
t2 = sum*t1/;
sum+=t2;
}
else
{
t1 = */(-a[i].x);
t2 = sum*t1/;
sum+=t2;
}
}
if (sum >= ) sum=;
}
if (sum >= ) sum=;
double ans = sum*0.1/;
sprintf(ss,"%.2f",ans);
stack<char>p;
int i,cnt = ;
printf("$");
for (i = strlen(ss)-; i >= ; --i)
{
p.push(ss[i]);
if (ss[i]=='.')
break;
}
for (int j = i-; j >= ; --j)
{
cnt++;
p.push(ss[j]);
if (cnt%==&&j!=)
p.push(',');
}
while(!p.empty())
{
char ch = p.top();
printf("%c",ch);
p.pop();
}
puts("");
}
return ;
}
Parlay Wagering的更多相关文章
- URAL 1936 Roshambo 题解
http://acm.timus.ru/problem.aspx?space=1&num=1936 F - Roshambo Time Limit:1000MS Memory Limit:65 ...
- 从商业角度探讨API设计
为Web设计.实现和维护API不仅仅是一项挑战:对很多公司来说,这是一项势在必行的任务.本系列将带领读者走过一段旅程,从为API确定业务用例到设计方法论,解决实现难题,并从长远的角度看待在Web上维护 ...
- URAL 1936 Roshambo(求期望)
Description Bootstrap: Wondering how it's played? Will: It's a game of deception. But your bet inclu ...
随机推荐
- zabbix+docker
由于公司线上服务器数量太少,又要用于生产,领导让上zabbix,但熟知zabbix搭建需要LAMP或者LNMP,如果和生产服务器混搭的话,不方便管理,也怕出问题,所以就先使用docker方式搭建管理. ...
- TestNG多线程测试-注解方式实现
用@Test(invocationCount = x,threadPoolSize = y)声明,invocationCount表示执行次数,threadPoolSize表示线程池大小. packag ...
- java 十五周总结
- js之获取html标签的值
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 洛谷 2048 BZOJ 2006 [NOI2010]超级钢琴
[题解] 贪心题.设五元组(mx,pos,l,r1,r2)表示最大值为mx,取得最大值的区间右端点为pos,区间左端点为l,区间右端点的可选区间为[r1,r2]. 每次从堆里拎出最大值,然后把这个区间 ...
- nyoj 4 ASCII码排序(set,multiset)
ASCII码排序 时间限制:3000 ms | 内存限制:65535 KB 难度:2 描述 输入三个字符(可以重复)后,按各字符的ASCII码从小到大的顺序输出这三个字符. 输入 第一行输 ...
- [HDU3586]Information Disturbing(DP + 二分)
传送门 题意:给定一个带权无向树,要切断所有叶子节点和1号节点(总根)的联系,每次切断边的费用不能超过上限limit,问在保证总费用<=m下的最小的limit 二分答案,再 DP,看看最终结果是 ...
- [河南省队2012] 找第k小的数
★★☆ 输入文件:kth.in 输出文件:kth.out 简单对比时间限制:1 s 内存限制:128 MB 题目描述 看到很短的题目会让人心情愉悦,所以给出一个长度为N的序列A1,A2 ...
- 【Eclipse】Eclipse 快捷键
Eclipse 快捷键 关于快捷键 Eclipse 的很多操作都提供了快捷键功能,我们可以通过键盘就能很好的控制 Eclipse 各个功能: 使用快捷键关联菜单或菜单项 使用快捷键关联对话窗口或视图或 ...
- JRobin绘制指定时间段的流量图
http://www.micmiu.com/enterprise-app/snmp/jrobin-graph-rpn/