编程题

将整数换成分数

题目描述

一个小于 100 万的正整数 n,尝试把 n 变成带分数形式,也就是 n=a+b/c,其中a,b,c 是三个正整数,并且数字 1~9(不含 0)在 a、b、c 中,必须出现,且只能出现一次。例如:100=3 + 69258/714,其中 1 到 9 这 9 个数字全都出现了,并且只出现一次。当然,100 还等于 82 + 3546/197,也就是说将 100 变成带分数形式,会有两种组合方式。事实上 100,可以写成 11 种 1 到 9 组成整数加上分数的形式。

请编写一个程序,根据一个输入 N,程序输出该数字用数码 1~9 不重复不遗漏地组成带分数表示的全部可能性。不要求输出每个表示,只输出有多少种表示法!

输入格式

输入一行,表示要分解的正整数。

输出格式

输出一行,表示有多少分法。

样例输入

100

样例输出

11

注意事项

请严格按要求输出,不要多余的打印语句,例如:“输入 x=...” 等多余内容。本程序的代码放在同一个源文件中,调试通过后,拷贝提交该源码。注意: main 函数需要返回 0。

注意: 只使用 ANSI C/ANSI C++ 标准,不要调用依赖于编译环境或操作系统的特殊函数。注意: 所有依赖的函数必须明确地在源文件中 #include<xxx>, 不能通过工程设置而省略常用头文件。

A
B
C
D
查看答案
赣ICP备20007335号-2