Tugas Anda adalah untuk menerima sebagai masukan dua "Seni ASCII", dan sejajarkan setiap karya seni di sebelah satu sama lain secara horizontal.
Misalnya, Anda memiliki dua string, "abc\ndef"
dan "123\n456"
. Anda perlu menyelaraskannya secara horizontal untuk menghasilkan string "abc123\ndef456
". Saya menyebutnya" menyelaraskan secara horizontal "karena sementara input, ketika dicetak, terlihat seperti ini:
abc
def
dan:
123
456
Outputnya, ketika dicetak, akan terlihat seperti ini:
abc123
def456
Perhatikan bagaimana satu input ditempatkan di sebelah input lainnya.
Memasukkan
- Input akan berupa string, dan dapat berupa dua argumen terpisah, atau sebagai urutan string.
- Karakter dalam seni akan memiliki kode desimal dalam kisaran 32-126 (inklusif).
- Tidak apa-apa untuk mendukung sejumlah seni sewenang-wenang untuk menyelaraskan alih-alih hanya dua (tapi jelas Anda harus mendukung setidaknya dua).
- Anda dapat mengasumsikan bahwa masing-masing seni akan memiliki dimensi yang sama, dan bahwa mereka akan mengandung setidaknya satu baris.
Anda harus dapat mendukung setidaknya 100x100 karakter seni.
Untuk menyelaraskan dengan konvensi di situs, urutan argumen tidak masalah. Tidak masalah seni mana yang ada di kiri atau kanan.
Keluaran
Output akan menjadi seni selaras seperti yang disebutkan di atas, baik dikembalikan atau output ke stdout.
Setiap spasi spasi tambahan di opsional.
Tidak boleh ada pemisah visual antara seni yang selaras.
Seni input dan output harus berupa \n
atau \r
dibatasi string. Akan terlalu sepele untuk mengizinkan 2D-array.
Pengajuan mungkin fungsi atau program lengkap.
Kasus uji:
"abc\ndef", "123\n456" -> "abc123\ndef456".
"qwertyuiop\n asdfghjkl", "Some other\nTextFiller" -> "qwertyuiopSome other\n asdfghjklTextFiller"
" * \n *** \n*****\n *** \n * \n", " + \n + \n+++++\n + \n + \n" -> " * + \n *** + \n*****+++++\n *** + \n * + \n"
"|"
atau" "
?\r
bukan\n
?Jawaban:
Kanvas , 1 byte
Coba di sini!
sumber
Haskell , 37 byte
Cobalah online!
IO sebagai daftar garis hanya akan
zipWith(++)
. : Psumber
Python 2 , 59 byte
Cobalah online!
sumber
05AB1E , 6 byte
Cobalah online!
Penjelasan
sumber
Jelly , 4 byte
Cobalah online!
sumber
Perl 5
-0F
, 28 byteTermasuk
+2
untuk\n
argumen ke-F
(itu "kode" sehingga harus dihitung)Berikan input secara langsung setelah satu sama lain di STDIN.
Cobalah online!
sumber
Bash + coreutils, 14
Input diberikan sebagai dua nama file sebagai parameter baris perintah.
Cobalah online .
sumber
paste -d "" $@
-d ""
, saya mencoba-d""
, yang tentu saja tidak berbeda dengan-d
Perl 6 , 27 byte
Cobalah online!
Bekerja dengan sejumlah seni yang sewenang-wenang. IO sebagai daftar daftar akan adil
&[Z~]
.sumber
APL (Dyalog Unicode) , 9 byte SBCS
Program lengkap. Prompts (STDIN) untuk daftar panjang
\r
string -delimited. String mungkin kasar dan dengan lebar yang berbeda selama mereka memiliki jumlah garis yang sama. Cetakan (STDOUT) menghasilkan seni ASCII.Cobalah online!
⎕
meminta input yang dievaluasi⎕FMT¨
memformat (mengevaluasi semua karakter kontrol dan mengembalikan matriks karakter) masing-masing,/
menggabungkannya secara horizontal (pengurangan catenation)⊃
mengungkapkan (karena pengurangan mengurangi peringkat dari 1 menjadi 0)sumber
Java 8,
1008478 byteKeluar dengan
ArrayIndexOutOfBoundsException
STDERR setelah mencetak hasilnya ke STDOUT, yang diizinkan .-6 byte terima kasih kepada @ OlivierGrégoire .
Penjelasan:
Cobalah online.
sumber
a->b->{for(int i=0;;)System.out.println(a.split("\n")[i]+b.split("\n")[i++]);}
78 byte Tidak ada yang dikatakan tentang tidak memiliki efek samping tambahan. Jadi kita bisa menghitung sampai pengecualian terjadi.Ruby , 48 byte
Cobalah online!
Seekor lambda mengambil dua senar dan mengembalikan tali. Mengatur
split
pembatas default ke baris baru dengan$;=$/;
tidak menyimpan byte, tetapi membuat sisanya terlihat sedikit lebih bagus.Ruby , 49 byte (banyak string)
Cobalah online!
Hanya untuk bersenang-senang. Ternyata kami dapat menerima array string dengan biaya tambahan hanya 1 byte.
sumber
JavaScript (ES6), 51 byte
sumber
Bertanya-tanya , 21 byte
Contoh penggunaan:
#n
digunakan sebagai ganti\n
untuk menunjukkan baris baru.Penjelasan
Versi verbal:
Pisahkan setiap string dalam array input di sepanjang baris baru, zip dengan string concatenate, dan output setiap item.
sumber
Kotlin , 73 byte
Cobalah online!
sumber
Tambahkan ++ , 24 byte
Cobalah online!
sumber
C, 96 byte
Cobalah online!
sumber
JavaScript (ES6), 52 byte
Mengambil input dalam sintaks currying
(a)(b)
.Cobalah online!
sumber
Julia 0,6 , 41 byte
Cobalah online!
sumber
PowerShell ,
5149 byteCobalah online!
Mengambil input sebagai string literal dengan baris baru. Anda juga bisa menggunakan
`n
(pembatas baris baru di PowerShell, tidak\n
).Kami pertama
-split
- tama memasukkan string input pada baris baru, yang menciptakan array, dan mengulanginya|%{...}
. Setiap iterasi, kami merangkai string dengan string input kanan lagi dibagi pada baris baru, diindeks dan ditambahkan.Itu dibiarkan di pipa dan implisit
Write-Output
pada penyelesaian memberi kita output sebagai array string, yang dicetak dengan baris baru di antaranya.sumber
APL (Dyalog Unicode) , 22 byte ( Adám's SBCS )
Cobalah online!
sumber
Merah , 78 byte
Cobalah online!
sumber
Japt
-R
,87 byteCobalah
Penjelasan
Alternatif
Cobalah
sumber
Bash , 92 byte
Cobalah online!
Tidak Terkumpul:
Contoh:
Saya juga memiliki yang lebih pendek tetapi gagal jika
read
pernyataan kedua mengembalikan nilai bukan nol.Bash , 55 byte
Catatan:
<&3
sepertinya tidak berfungsi di tio.runYang ini menggunakan deskriptor file (
1
dan3
) alih-alih argumen:sumber
Arang , 8 byte
Cobalah online! Tautan adalah untuk mengucapkan versi kode. Penjelasan:
Tambahkan 2 byte untuk menerima beberapa input:
Cobalah online! Tautan adalah untuk mengucapkan versi kode. Penjelasan:
Tambahkan 4 byte untuk menerima input yang tidak ditambahkan:
Cobalah online! Tautan adalah untuk mengucapkan versi kode. Penjelasan:
sumber
JavaScript (Node.js) , 79 byte
Cobalah online!
Mendukung jumlah sembarang seni ASCII bergabung bersama bukan hanya 2 (seperti dalam 2 jawaban JS sebelumnya).
sumber
Bersih , 61 byte
Cobalah online!
sumber
Swift 4 , 119 byte
Penjelasan
Cobalah online!
sumber