奇妙数 提示信息: 如果一个整数能够被它的各位上的非零数字整除,则称该数为奇妙数。 例如: 整数102,它的各位上的非零数字为1 和2,102 既能被1 整除,也能被2 整除, 所以102 是奇妙数; 整数456,它的各位上的非零数字为4、5 和6,456 能被4 和6 整除,但不能被5整除,所以456 不是奇妙数。 题目描述: 给定两个整数n 和m,请输出n 到m 之间(包含n 和m)所有的奇妙数;若不存在奇妙数,则输出-1。 输入描述: 一行输入两个整数n 和m(1≤n≤m≤100000),整数之间以一个空格隔开 输出描述: 按照从小到大的顺序输出n 到m 之间(包含n 和m)所有的奇妙数,整数之间以一个空格隔开;若不存在奇妙数,则输出-1 样例输入: 10 20 样例输出: 10 11 12 15 20
正确答案:参考程序(Python):奇妙数。n~m间每位非零数字都能整除该数的数。res=[i for i in range(n,m+1) if all(i%int(d)==0 for d in str(i) if d!='0')];print(' '.join(map(str,res)) if res else -1)。核心:奇妙数判断。
试卷来源:202401(第15届)蓝桥杯C++编程青少组(选拔赛_中高级)真题