Diberi nomor n, cetak nomor Fermat prima ke-n , di mana angka-angka Fermat adalah dalam bentuk 2 2 k +1. Kode ini secara teoritis harus bekerja untuk n apa pun (yaitu jangan hardcode itu), meskipun tidak diharapkan untuk mengakhiri untuk n> 4. (Kode tidak boleh mengembalikan 4294967297 untuk n = 5, karena 4294967297 bukan bilangan prima.)
Harap perhatikan bahwa meskipun semua bilangan prima Fermat adalah dari bentuk 2 2 n +1, tidak semua angka dari bentuk 2 2 n +1 adalah prima. Tujuan dari tantangan ini adalah mengembalikan perdana ke-n .
Uji kasus
0 -> 3
1 -> 5
2 -> 17
3 -> 257
4 -> 65537
Aturan
- Celah standar tidak diijinkan.
- Pengindeksan dan pengindeksan keduanya dapat diterima.
- Ini adalah kode-golf , kemenangan byte-count terendah.
Terkait: Constructible n-gons
n=1:4
. Semua bilangan prima dari bentuk 2^2^n+1
, tetapi itu tidak berarti bahwa semua bilangan bentuk 2^2^n+1
sebenarnya prima. Ini adalah kasus untuk n=1:4
, tetapi tidak n=5
untuk contohnya.
n
dan output harus dalam bentuk 2^(2^n)+1
. Jika Anda menggunakan variabel yang berbeda untuk input dan eksponen maka beberapa kebingungan mungkin berkurang. Mungkin juga membantu jika Anda secara eksplisit menyatakan bahwa "n = 5 tidak perlu menghasilkan dalam waktu yang wajar, tetapi tidak boleh menghasilkan 4294967297"
2^(2^n) + 1
, di manan
inputnya? Ini sesuai dengan kasus pengujian Anda (yang kami tahu sudah prima, jadi tidak perlu memeriksa). Dan Anda tidak mengharapkan program bekerja di mana n> 4 (dan n = 5 adalah non-prime pertama).