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的更多相关文章

  1. URAL 1936 Roshambo 题解

    http://acm.timus.ru/problem.aspx?space=1&num=1936 F - Roshambo Time Limit:1000MS Memory Limit:65 ...

  2. 从商业角度探讨API设计

    为Web设计.实现和维护API不仅仅是一项挑战:对很多公司来说,这是一项势在必行的任务.本系列将带领读者走过一段旅程,从为API确定业务用例到设计方法论,解决实现难题,并从长远的角度看待在Web上维护 ...

  3. URAL 1936 Roshambo(求期望)

    Description Bootstrap: Wondering how it's played? Will: It's a game of deception. But your bet inclu ...

随机推荐

  1. idea安装及使用

    使用:https://blog.csdn.net/qq_42303709/article/details/81983208 安装教程:https://blog.csdn.net/yl171272518 ...

  2. 11servlet接口

    11.servlet接口-2018/07/23 1.servlet 是一个接口,需要导包javax.servlet.Servlet; 第一种编写一个servlet程序的方法 写一个Java类,实现se ...

  3. 洛谷——P2171 Hz吐泡泡

    P2171 Hz吐泡泡 题目描述 这天,Hz大大心血来潮,吐了n个不同的泡泡玩(保证没有重复的泡泡).因为他还要写作业,所以他请你帮他把这些泡泡排序成树(左子树<=根<右子树).输出它的后 ...

  4. <MySQL>入门六 变量

    /* 变量 系统变量: 全局变量 会话变量 自定义变量 用户变量 局部变量 */ -- ------------系统变量-------------------- /* 变量由系统提供,不是用户定义,属 ...

  5. js之字典操作

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. Python异常捕捉的一个小问题

    问题: names = ['taotao','songwenjing','liu','li']I = iter(names)while True: try: s = next(I) except Ex ...

  7. POJ 3270 置换群问题

    题目大意是: 每头牛都有一个对应的值a[i],现在给定一个初始的牛的序列,希望通过两两交换,能够使这些牛按值升序排列,每次交换都会耗费一个 a[i]+a[j] 希望耗费最小,求出这个最小耗费 个人觉得 ...

  8. POJ 1811 大整数素数判断 Miller_Rabin

    #include <cstdio> #include <cstring> #include <cmath> #include <ctime> #incl ...

  9. [24点计算器][C++版本]无聊拿去玩

    特性:数字数量.目标答案不限,当然数据大了会很慢... 基本可以去除所有本质相同的表达式...至少能等出结果的数据规模可以.. 安卓:http://yun.baidu.com/s/1slCGILn 程 ...

  10. 布局(codevs 1242)

    题目描述 Description 当排队等候喂食时,奶牛喜欢和它们的朋友站得靠近些.FJ有N(2<=N<=1000)头奶牛,编号从1到N,沿一条直线站着等候喂食.奶牛排在队伍中的顺序和它们 ...