Tantangan
Tulis fungsi atau program yang menerima jalur input, melakukan pengocokan yang sangat spesifik dan aneh pada karakternya, dan menampilkan hasilnya.
Pengocokan yang diperlukan dapat dijelaskan menggunakan algoritma berikut:
- Labeli setiap karakter dalam input dengan indeks berbasis 1.
- Tulis karakter nomor 1 sebagai output.
- Dimulai dengan karakter nomor 2, tulis setiap karakter lainnya ke dalam urutan, tidak termasuk karakter 2 itu sendiri. Dengan kata lain, tulis karakter 4, 6, 8, 10, dan seterusnya sebagai output.
- Dimulai dengan nomor karakter berikutnya dan belum ditulis sebagai output, tulis setiap karakter ke output, tidak termasuk karakter itu sendiri, dan tidak termasuk karakter lain (dengan label numerik), Anda mungkin sudah menulis ke output.
- Ulangi langkah 4 selama terus menambahkan karakter baru ke output.
- Tulis karakter yang tersisa untuk ditampilkan, secara berurutan.
Contoh
- Beri label karakter.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 SBEAUTYCORNER OLDDOCYAK
2. Tulis karakter pertama ke output:
12 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27OLDDOCYAK 'SBEAUTYCORNER O
3. Tulis setiap karakter lain mulai dengan 2, tidak termasuk 2.
12 3456789101112131415161718192021222324252627OLDDOCYAK'SBEAUTYCORNER O OY 'EUYCRE
4. Karakter selanjutnya yang belum ditulis adalah karakter nomor 3; tulis setiap karakter ke-3 dimulai dengan 3, tetapi tidak termasuk karakter 3 itu sendiri, dan setiap karakter yang sudah ditulis.
12 3456789101112131415161718192021222324252627OLDDOCYAK'SBEAUTYCORNEROOA 'EUYCRE YB R
5. Ulangi langkah 4 menggunakan karakter berikutnya, karakter 5.
4. Karakter selanjutnya yang belum ditulis adalah karakter nomor 5; tulis setiap karakter ke-5 dimulai dengan 5, tetapi tidak termasuk karakter 5 itu sendiri, dan setiap karakter sudah ditulis. (Jumlah ini hanya karakter 25).
12 3456789101112131415161718192021222324252627OLDDOCYAK'SBEAUTYCORNEROOA 'EUYCREYB R N
5. Karakter selanjutnya adalah 7; tetapi 14, 21 sudah ditulis, jadi tidak ada lagi karakter yang akan dihasilkan jika kita mengulangi langkah 4. Jadi, kita selesai dengan 5.
6. Tuliskan karakter yang tersisa secara berurutan.
12 3456789101112131415161718192021222324252627OLD DOCYAK'SBEAUTYCORNEROOA 'EUYCREYB RN LDDCKSATO
Aturan
Input dan output dapat melalui input standar / output standar, string, atau array karakter.
Jika membaca sebagai input standar, Anda dapat dengan nyaman menganggap bahwa ada baris baru yang tertinggal, atau bahwa seluruh input berisi baris. Karakter baris baru tidak berpartisipasi dalam acak.
Demikian juga, pada kenyamanan Anda, output Anda mungkin memiliki baris baru atau tidak.
Celah standar tidak diijinkan.
Ini adalah kompetisi kode golf. Kode terkecil dalam byte menang.
Uji Kasus
123456789ABCDEF -> 1468ACE9F2357BD
OLD DOC YAK'S BEAUTY CORNER -> O O A' EUYCREYB RNLDDCKSATO
Blue boxes use a 2600hz tone to convince telephone switches that use in-band signalling that the caller is actually a telephone operator.
->
Bebxsuea20h oet ovnetlpoesice htuei-adsgaln httecle satal eehn prtre 0ncce ha nng aiuapootnt ihyon atallu o s 6z oi ehwstsnbilt lr clee.