Tantangan
Tulis program atau fungsi yang menggunakan string s
dan integer n
sebagai parameter. Program Anda harus mencetak (atau mengembalikan) string ketika diubah sebagai berikut:
Mulai di kiri atas dan bergerak ke bawah dan ke kanan, tulis s
sebagai gelombang tinggi n
. Kemudian, dari atas ke bawah, gabungkan setiap baris sebagai string (tanpa spasi).
Contoh
Diberi string "WATERMELON" dan tinggi 3:
Gelombangnya akan terlihat seperti ini:
W R O
A E M L N
T E
Lalu, gabungkan baris dari atas ke bawah:
WRO
AEMLN
TE
Jadi, program Anda harus mengembalikan string "WROAEMLNTE"
Demikian juga, "WATERMELON" dengan ketinggian 4 harus menghasilkan gelombang berikut:
W E
A M L
T R O
E N
Program Anda kemudian harus mengembalikan string "WEAMLTROEN"
Aturan
Memasukkan
Masukan dapat diambil dalam format apa pun yang masuk akal. String dapat dalam hal apa pun yang Anda inginkan. Anda mungkin menganggap itu0 < n <= s.length
Keluaran
Keluaran harus hanya terdiri dari string yang ditransformasikan (apakah dikembalikan atau dicetak ke STDOUT), ditambah baris baru yang tertinggal.
Mencetak gol
Ini adalah kode-golf , jadi jawaban tersingkat dalam byte menang! Tidak ada celah standar.
Uji Kasus
Input Output
programmingpuzzles, 5 -> piermnlsomgzgapzru
codegolf, 3 -> cgoeofdl
elephant, 4 -> enlatehp
1234567, 3 -> 1524637
qwertyuiop, 1 -> qwertyuiop
n > 0
, tetapi n=1
ini adalah kasus yang valid. Saya akan memperbarui pertanyaan sekarang.
n
> 1? Mohon klarifikasi dan jika tidak menambahkan test case