Tantangan
Diberikan string dan angka, bagi string menjadi banyak bagian yang berukuran sama. Misalnya, jika angkanya 3, Anda harus membagi string menjadi 3 bagian tidak peduli berapa lama string itu.
Jika panjang tali tidak terbagi rata menjadi angka yang disediakan, Anda harus membulatkan ukuran masing-masing bagian dan mengembalikan string "sisa". Misalnya, jika panjang string input adalah 13, dan angkanya adalah 4, Anda harus mengembalikan empat string masing-masing ukuran 3, ditambah string sisa ukuran 1.
Jika tidak ada yang tersisa, Anda mungkin tidak mengembalikan satu, atau mengembalikan string kosong.
Jumlah yang disediakan dijamin kurang dari atau sama dengan panjang tali. Misalnya, input "PPCG", 7
tidak akan terjadi karena "PPCG"
tidak dapat dibagi menjadi 7 string. (Saya kira hasil yang tepat adalah (["", "", "", "", "", "", ""], "PPCG")
. Lebih mudah untuk tidak mengizinkan ini sebagai masukan.)
Seperti biasa, I / O itu fleksibel. Anda dapat mengembalikan pasangan string dan string sisa, atau satu daftar string dengan sisanya di akhir.
Uji kasus
"Hello, world!", 4 -> (["Hel", "lo,", " wo", "rld"], "!") ("!" is the remainder)
"Hello, world!", 5 -> (["He", "ll", "o,", " w", "or"], "ld!")
"ABCDEFGH", 2 -> (["ABCD", "EFGH"], "") (no remainder; optional "")
"123456789", 5 -> (["1", "2", "3", "4", "5"], "6789")
"ALABAMA", 3 -> (["AL", "AB", "AM"], "A")
"1234567", 4 -> (["1", "2", "3", "4"], "567")
Mencetak gol
Ini adalah kode-golf , jadi jawaban tersingkat di setiap bahasa menang.
Poin bonus (tidak benar-benar 😛) untuk membuat solusi Anda benar-benar menggunakan operator divisi bahasa Anda.
;⁹/
PPCG
, 7
jadi sisanya adalahPPCG