Pendahuluan (dapat diabaikan)
Menempatkan semua bilangan bulat positif dalam urutan regulernya (1, 2, 3, ...) agak membosankan, bukan? Jadi di sini adalah serangkaian tantangan seputar permutasi (perombakan) dari semua bilangan bulat positif. Ini adalah tantangan keenam dalam seri ini (tautan ke tantangan pertama , kedua , ketiga , keempat dan kelima ).
Tantangan ini memiliki tema Paskah yang ringan (karena ini Paskah). Saya mengambil inspirasi dari telur angsa yang sangat dihiasi ini (dan menurut saya agak jelek).

Itu mengingatkan saya pada spiral Ulam , di mana semua bilangan bulat positif ditempatkan dalam spiral berlawanan arah jarum jam. Spiral ini memiliki beberapa fitur menarik yang terkait dengan bilangan prima, tetapi itu tidak relevan untuk tantangan ini.
Kita sampai pada permutasi tantangan ini dari bilangan bulat positif jika kita mengambil angka dalam spiral Ulam dan melacak semua bilangan bulat dalam spiral putaran searah jarum jam , mulai dari 1. Dengan cara ini, kita mendapatkan:
1, 6, 5, 4, 3, 2, 9, 8, 7, 20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 25, 24, 23, etc.
Jika Anda akan menggambar kedua spiral, Anda akan mendapatkan semacam jaring spiral (kulit telur) tak terbatas ( perhatikan referensi Orde Baru di sana ).
Urutan ini hadir dalam OEIS dengan nomor A090861 . Karena ini adalah tantangan "urutan murni", tugasnya adalah mengeluarkan untuk diberikan sebagai input, di mana adalah A090861 .
Tugas
Diberikan input integer , output dalam format integer, di mana adalah A090861 .
Catatan: pengindeksan berbasis 1 diasumsikan di sini; Anda dapat menggunakan pengindeksan berbasis 0, jadi , dll. Sebutkan ini dalam jawaban Anda jika Anda memilih untuk menggunakan ini.
Uji kasus
Input | Output
---------------
1 | 1
5 | 3
20 | 10
50 | 72
78 | 76
123 | 155
1234 | 1324
3000 | 2996
9999 | 9903
29890 | 29796
Aturan
- Input dan output adalah bilangan bulat.
- Program Anda setidaknya harus mendukung input dalam kisaran 1 hingga 32767).
- Input yang tidak valid (0, float, string, nilai negatif, dll.) Dapat mengakibatkan output yang tidak terduga, kesalahan atau (tidak) perilaku yang didefinisikan.
- Standar I / O aturan berlaku.
- Celah default dilarang.
- Ini adalah kode-golf , jadi jawaban tersingkat dalam byte menang
