pat-A1011-World Cup Betting

题目链接->link

题意描述

分别给出三场比赛胜、平、负的收益数字,假设每场比赛赌博成本为2,利润公式为(abc*0.65-1)*2,求最大收益的解以及最大收益是多少。

思路

  1. 二维数组game[3][3]存储三场比赛三种结果的收益数字,max[3]存储三场比赛收益的最大数字,flag[3]存储最大数字的下标,即胜、平还是负。
  2. 每输入一个收益数字,就比较并更新对应这一场(行)的max[i]的值,并用flag[i]记录下j的值,即存储胜、平、负的下标。
  3. 累计求和并注意输出格式即可。

代码

#include <stdio.h>
#include <math.h>
#include <string.h>
#include <iostream>

using namespace std;
    
int main(){
    double game[3][3],max[3]={0};
    int i,j,flag[3]={0};
    for(i=0;i<3;i++){
        for(j=0;j<3;j++){
            scanf("%lf",&game[i][j]);
            if(game[i][j]>max[i]){
                max[i]=game[i][j];
                flag[i]=j;
            }
        }
    }
    for(i=0;i<3;i++){
        if(flag[i]==0)printf("W ");
        if(flag[i]==1)printf("T ");
        if(flag[i]==2)printf("L ");
    }
    double sum=1;
    for(i=0;i<3;i++){
        sum*=max[i];
    }
    printf("%.2f\n",(sum*0.65-1)*2);
    return 0;
}

发布了28 篇原创文章 · 获赞 1 · 访问量 587

猜你喜欢

转载自blog.csdn.net/MichealWu98/article/details/104056065
今日推荐