SSOJ1189:0-9除法等式
2958+
作者:crxis 发布:2018-03-27 分类:枚举
题目大意:输入正整数n,按照从小到大的顺序输出所有形如abcde/fghij=n的表达式,其中a~j恰好是数字0~9的一个排列。
题目描述
输入正整数n,按照从小到大的顺序输出所有形如abcde/fghij=n的表达式,其中a~j恰好是数字0~9的一个排列(可以有前导0),2<=n<=79
输入
输入1个正整数n
输出
输出所有形如abcde/fghij=n的表达式
每行一组。
按照被除数从小到大的顺序输出
样例输入
62
样例输出
79546/01283=62 94736/01528=62
解题思路
a/b=n,已知n,可以枚举a,求出b,或者枚举b,求出a。知道a、b、n后,判断a和b是否满足条件。
条件判断:开一个数字记录0-9每个数字出现的次数,如果出现次数超过1就是不可行的;另外,10个数字必须都出现,如果只出现9个,那么0一定不能出现(作为b的前导0)。
程序实现
枚举a,需要注意b=a/n,整除后有可能b*n!=a,此时亦不满足条件。
枚举b,a=b*n,a必须是5位数,6位数是不满足条件的。