http://codeforces.com/problemset/problem/122/A
import java.util.Scanner;
public class Lucky_Division {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int tt = n;
//先判斷是否由4和7組成
boolean flag = lucky(n);
if(!flag) {
for(int i = 2; i*i <= n; i++) {
if(n % i == 0 && (lucky(i) || lucky(n/i))) {
System.out.println("YES");
return;
}
}
System.out.println("NO");
} else {
System.out.println("YES");
}
}
public static boolean lucky(int n) {
while(n > 0) {
int temp = n %10 ;
if(temp != 4 && temp != 7) {
return false;
}
n = n /10;
}
return true;
}
}
本文介绍了一个Java程序,用于判断一个数是否为幸运数(仅包含4和7),并检查该数是否能被分解为至少两个幸运数的乘积。通过输入一个整数n,程序会输出YES如果n本身是幸运数或者可以分解为幸运数的乘积,否则输出NO。
387

被折叠的 条评论
为什么被折叠?



