ดูเหมือนว่าเราไม่เคยได้รับเหนื่อยของความท้าทายที่เกี่ยวข้องกับตัวอักษร ...
สูตรอาหาร
ป.ร. ให้ไว้
- สตริงของตัวอักษร
S
และ - จำนวนเต็มบวก
M
,N
,
ผลิตซุปตัวอักษรที่มีตัวอักษรของS
การครองตำแหน่งสุ่มในชามสี่เหลี่ยมขนาดM
× N
, กรอบด้วยอักขระที่ไม่ใช่ตัวอักษรที่ไม่ใช่พื้นที่ที่จะเป็นตัวแทนของขอบของชาม
ตำแหน่งที่ไม่ได้ใช้ด้วยตัวอักษรควรจะแสดงเป็นช่องว่าง ดูตัวอย่างด้านล่าง
กฎ Aditional
- ขนาด
M
×N
หมายถึงการตกแต่งภายในของชาม ขนาดรวมทั้งขอบเป็น×M+2
N+2
- อักขระแต่ละตัวจาก
S
ควรปรากฏขึ้นหนึ่งครั้งในชามในตำแหน่งอื่น นั่นคืออักขระหนึ่งตัวไม่สามารถเขียนทับอักขระอื่นได้ S
อาจมีรายการที่ซ้ำกัน ตัวอย่างเช่นถ้าS
เป็นสตริง'abcc'
ซุปจะต้องมีหนึ่งa
หนึ่งb
และสองc
(ทั้งหมดอยู่ในตำแหน่งที่แตกต่างกัน)- ปัจจัยการผลิตจะตอบสนองข้อ จำกัด
M >= 1
, ,N >= 1
1 <= length(S) <= M*N
- ขอบของชามสามารถเป็นอักขระที่ไม่ใช่ตัวอักษรที่ไม่ใช่ช่องว่างสอดคล้องกันระหว่างการรันโปรแกรมและค่าอินพุต
- ตำแหน่งตัวอักษรในชามจะถูกสุ่มดังนั้นผลลัพธ์อาจแตกต่างกันทุกครั้งที่โปรแกรมทำงานด้วยอินพุตเดียวกัน
- ได้รับการป้อนข้อมูลทุกชุดที่เป็นไปได้ของตำแหน่งตัวอักษรควรจะมีความน่าจะเป็นที่ไม่ใช่ศูนย์ เนื่องจากสิ่งนี้ไม่สามารถตรวจสอบได้จากการรับรู้บางอย่างของโปรแกรมโปรดอธิบายวิธีการที่รหัสของคุณเติมเต็ม
- อนุญาตให้นำช่องว่างรอบตัวหรือต่อท้ายรอบขอบได้
S
จะประกอบด้วยตัวอักษรตัวพิมพ์ใหญ่เท่านั้น หากคุณต้องการคุณสามารถเลือกที่จะใช้ตัวอักษรพิมพ์เล็กเท่านั้น- อินพุตและเอาต์พุตยืดหยุ่นตามปกติ ตัวอย่างเช่นเอาต์พุตสามารถเป็นสตริงที่มีการขึ้นบรรทัดใหม่อาร์เรย์อักขระ 2D หรือรายการบรรทัด
- โปรแกรมหรือฟังก์ชั่นที่ได้รับอนุญาตในการเขียนโปรแกรมภาษา ช่องโหว่มาตรฐานเป็นสิ่งต้องห้าม
- รหัสที่สั้นที่สุดในหน่วยไบต์ชนะ
ตัวอย่าง
อินพุตจะแสดงเป็นS, [M N]
โดยที่M
คือจำนวนแถวและN
จำนวนคอลัมน์ ตัวละครที่#
ใช้สำหรับขอบ
'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 #
###########################################
|+-
?