Nombor yang hanya mempunyai 2, 3 atau 5 sebagai faktor perdana dipanggil nombor hodoh. Beberapa nombor hodoh termasuk: 1, 2, 3, 4, 5, 6, 8, 10, 12, 15, dsb.
Kami mempunyai nombor N, dan tugasnya adalah untuk mencari nombor hodoh N dalam urutan nombor hodoh.
Contohnya:
Input -1:
N = 5
Output:
5
Penjelasan:
nombor ke-5 yang hodoh 4, 5 , 6, 8, 10, 12, 15] ialah 5.Input-2:
N = 7
Output:
8
Penjelasan:
nombor urut 1, dan 2 , 4 , 5, 6, 8, 10, 12, 15], nombor hodoh ketujuh ialah 8. Bagaimana untuk menyelesaikan masalah iniCara mudah untuk menyelesaikan masalah ini ialah dengan menyemak sama ada nombor yang diberikan boleh dibahagi dengan 2, 3 atau 5 dan mengesan urutan sehingga nombor yang diberikan. Sekarang cari jika nombor itu memenuhi syarat untuk semua nombor hodoh dan kembalikan nombor itu sebagai output.public class UglyN { public static boolean isUglyNumber(int num) { boolean x = true; while (num != 1) { if (num % 5 == 0) { num /= 5; } else if (num % 3 == 0) { num /= 3; } // To check if number is divisible by 2 or not else if (num % 2 == 0) { num /= 2; } else { x = false; break; } } return x; } public static int nthUglyNumber(int n) { int i = 1; int count = 1; while (n > count) { i++; if (isUglyNumber(i)) { count++; } } return i; } public static void main(String[] args) { int number = 100; int no = nthUglyNumber(number); System.out.println("The Ugly no. at position " + number + " is " + no); } }
The Ugly no. at position 100 is 1536.
Atas ialah kandungan terperinci Cari nombor Nth hodoh dalam Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!