Diberikan input dari string yang mewakili definisi fungsi, output string dengan baris baru dan spasi dimasukkan sehingga argumen fungsi dipisahkan oleh baris baru dan disejajarkan.
String input akan mengikuti pola berikut:
Pertama, itu akan dimulai dengan awalan, yang selalu setidaknya satu karakter dan tidak mengandung karakter apa pun
,()
.Tanda kurung terbuka (
(
) kemudian akan menandai awal daftar argumen.Daftar nol atau lebih argumen akan mengikuti. Ini dipisahkan oleh string
", "
(koma dan kemudian spasi). Tak satu pun dari argumen akan berisi karakter apa pun,()
.Tanda kurung dekat (
)
) akan menandai akhir daftar argumen.Terakhir, postfix dapat ditemukan, yang panjangnya nol atau lebih karakter dan mungkin berisi karakter
,()
.
String input hanya akan terdiri dari ASCII yang dapat dicetak (yang berarti tidak akan mengandung baris baru).
Outputnya harus:
Awalan, disalin ke bawah kata demi kata, dan tanda kurung terbuka.
Daftar argumen, kali ini tidak dipisahkan oleh
", "
tetapi oleh koma, baris baru, dan ruang sebanyak yang diperlukan untuk meluruskan karakter pertama dari setiap argumen.Tutup paren dan postfix (jika ada) kata demi kata.
Karena ini adalah kode-golf , kode terpendek dalam byte akan menang.
Kasus uji (format: input baris tunggal diikuti oleh output diikuti oleh baris ganda ganda):
def foo(bar, baz, quux):
def foo(bar,
baz,
quux):
int main() {
int main() {
fn f(a: i32, b: f64, c: String) -> (String, Vec<i32>) {
fn f(a: i32,
b: f64,
c: String) -> (String, Vec<i32>) {
function g(h) {
function g(h) {
def abc(def, ghi, jkl, mno)
def abc(def,
ghi,
jkl,
mno)
x y z(x, y, z) x, y, z)
x y z(x,
y,
z) x, y, z)
a>>" "
benar-benar pintar ...