import java.util.ArrayList; import java.util.List; import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; class sampleA { @SuppressWarnings("resource") public static void main(String args[]) { Scanner scan = new Scanner(System.in); int min = scan.nextInt(); int max = scan.nextInt(); List answers = new ArrayList<>(); for (int i = min; i <= max; i++) { if (judge(i, answers)) { answers.add(i); } } for (int answer : answers) { System.out.println(answer); } } private static boolean judge(int i, List answers) { // TODO 自動生成されたメソッド・スタブ Pattern p = Pattern.compile("^[0-9]*3+[0-9]*$"); Matcher m = p.matcher(String.valueOf(i)); if (i % 3 == 0 || m.find() && !answers.contains(i)) { return true; } else { return false; } } }