YTU OJ 2994: 凑算式 (蓝桥杯题目)

Description

       B      DEF
A + --- + ------- = 10
       C      GHI

这个算式中A~I代表0~9的数字,不同的字母代表不同的数字。

比如:
6+8/3+952/714 就是一种解法,
5+3/1+972/486 是另一种解法。

问:这个算式一共有多少种解法?

Input

Output

输出能使这个算式成立的解法数量。

HINT

注意:你提交应该是个整数,不要填写任何多余的内容或说明性文字。


代码:

#include <stdio.h>
#include <iostream>
using namespace std;
int main()
{
    int a,b,c,d,e,f,g,h,i;
    int j=0;
    for(a=0; a<=9; a++)
        for(b=0; b<=9; b++)
            for(c=1; c<=9; c++)
                for(d=0; d<=9; d++)
                    for(e=0; e<=9; e++)
                        for(f=0; f<=9; f++)
                            for(g=0; g<=9; g++)
                                for(h=0; h<=9; h++)
                                    for(i=0; i<=9; i++)
                                    {
                                        if(g!=0&&h!=0&&i!=0)
                                        {
                                            if(a!=b&&a!=c&&a!=d&&a!=e&&a!=f&&a!=g&&a!=h&&a!=i&&b!=c&&b!=d&&b!=e&&b!=f&&b!=g&&b!=h&&b!=i&&c!=d&&c!=e&&c!=f&&c!=g&&c!=h&&c!=i&&d!=e&&d!=f&&d!=g&&d!=h&&d!=i&&e!=f&&e!=g&&e!=h&&e!=i&&f!=g&&f!=h&&f!=i&&g!=h&&g!=i&&h!=i)
                                            {
                                                if(a+b*1.0/c+(d*100+e*10+f*1.0)/(g*100+h*10+i*1.0)==10)
                                                    j++;
                                            }

                                        }

                                    }
    printf("%d",j);
    return 0;
}
注意:此题为蓝桥杯改编题目,原题中不可取0,此题可取因此答案会有所增加,还应注意的是两个整数相除得到的还是整数,所以要把其中一个整数先乘以 1.0 转化成浮点数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值