支付宝之小鸡拍球游戏(C++)

小鸡拍球

【问题描述】“蚂蚁庄园”的小鸡拍球游戏中,有三种可能的得分:5分、8分和10分。现从键盘输入一个整数的得分值,请输出该局游戏可能的得分组合。

【输入形式】输入只有一行,包括一个正整数n。

【输出形式】输出可能有若干行,每行是一种得分的序列,包括得5分的次数、得8分和得10分的次数,前导符和次数之间用英文冒号分隔,相邻得分次数之间用一个空格分隔。

【样例输入】
40

【样例输出】
5:0 8:0 10:4
5:0 8:5 10:0
5:2 8:0 10:3
5:4 8:0 10:2
5:6 8:0 10:1
5:8 8:0 10:0

【样例说明】
最后得分为40,总共有6种得分组合,比如4个10分,或者5个8分,或者2个5分3个10分,等等。

【示例代码】

#include<iostream>
using namespace std;
int main()
{
    int n;
    cin>>n;
    int sum=0,x=0,y=0,z=0;
    int a=5,b=8,c=10;
    x=n/a;
    y=n/b;
    z=n/c;
    for(int i=0;i<=x;i++)
    {
        for(int j=0;j<=y;j++)
        {
            for(int k=0;k<=z;k++)
            {
                sum=a*i+b*j+c*k;
                if(sum==n) cout<<a<<":"<<i<<' '<<b<<":"<<j<<' '<<c<<":"<<k<<endl;
            }
        }
    }
    cout<<endl;
    return 0;
}

发布了13 篇原创文章 · 获赞 0 · 访问量 118

猜你喜欢

转载自blog.csdn.net/qq_45909595/article/details/104085124
今日推荐