Kita tampaknya tidak pernah mendapatkan lelah tantangan terkait alfabet-...
Resep
Diberikan
- serangkaian huruf
S
, dan - dua bilangan bulat positif
M
,N
,
menghasilkan sup alfabet dengan huruf-huruf yang S
menempati posisi acak dalam mangkuk berukuran persegiM
× N
, dibingkai oleh karakter non-alfabet, non-spasi untuk mewakili tepi mangkuk.
Posisi yang tidak digunakan huruf harus ditampilkan sebagai spasi. Lihat contoh di bawah ini .
Aturan tambahan
- Ukuran
M
×N
mengacu pada interior mangkuk. Ukuran termasuk pelek adalahM+2
×N+2
. - Setiap karakter dari
S
harus muncul sekali dalam mangkuk, di posisi yang berbeda ; yaitu, satu karakter tidak dapat menimpa yang lain. S
mungkin mengandung duplikat . Sebagai contoh, jikaS
string'abcc'
, sup harus berisi satua
, satub
, dan duac
(semua dalam posisi berbeda).- Input akan memenuhi pembatasan
M >= 1
,N >= 1
,1 <= length(S) <= M*N
. - Tepi mangkuk dapat berupa karakter non-alfabet, non-spasi , konsisten di seluruh program yang dijalankan dan nilai input.
- Posisi huruf dalam mangkuk adalah acak, sehingga hasilnya dapat berbeda setiap kali program dijalankan dengan input yang sama.
- Diberikan input, setiap set posisi surat yang mungkin harus memiliki probabilitas tidak nol . Karena ini tidak dapat diperiksa dari beberapa realisasi program, tolong jelaskan bagaimana kode Anda memenuhi ini.
- Memimpin atau mengeklik spasi putih di sekitar tepi diizinkan.
S
akan berisi hanya huruf besar . Jika diinginkan, Anda dapat memilih untuk hanya mengambil huruf kecil .- Input dan output fleksibel seperti biasa. Misalnya, output dapat berupa string dengan baris baru, array karakter 2D, atau daftar garis.
- Program atau fungsi diizinkan, dalam bahasa pemrograman apa pun . Celah standar dilarang.
- Kode terpendek dalam byte menang.
Contohnya
Input ditampilkan sebagai S, [M N]
, di mana M
jumlah baris dan N
jumlah kolom. Karakter #
digunakan untuk pelek.
'O', [1 1]:
###
#O#
###
'HEY', [1 3]:
#####
#YHE#
#####
'HELLO', [4 11]:
#############
# O #
# H #
# LE #
# L #
#############
'ADVNJSGHETILMVXERTYIOJKCVNCSF', [8 12]:
##############
#K V L S #
# A V X H #
#T M C #
# I O N#
# YC #
# G I R SE#
# J F #
#JT D V EN #
##############
'OOOOOOOOOOXXXXX', [13 31]:
#################################
# X #
# O #
# #
# X #
# O #
# X O #
# O #
# X #
# O #
# X #
# O #
# O O O #
# O #
#################################
'ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ', [11 41]
###########################################
# JU#
# Q C M G R T U Y H #
# KI E H M YO #
# V BW I JC #
# SV D P B U #
# A F RF J KP E #
# E N TH Z #
# N BM O Q I AS N WX #
# S O K G L P Q #
#Z L T R L A F DD#
# V Y WX C G XZ #
###########################################
|+-
?