প্রদত্ত
a
থেকে অক্ষরের একটি ম্যাট্রিক্সu=" ╶╺╵└┕╹┖┗╴─╼┘┴┶┚┸┺╸╾━┙┵┷┛┹┻╷┌┍│├┝╿┞┡┐┬┮┤┼┾┦╀╄┑┭┯┥┽┿┩╃╇╻┎┏╽┟┢┃┠┣┒┰┲┧╁╆┨╂╊┓┱┳┪╅╈┫╉╋"
- হিসাবে একটি submatrix স্থানাঙ্ক
x
,y
,w
,h
(বাম, শীর্ষ, প্রস্থ> 1, উচ্চতা> 1) - একটি বেধ
t
(হিসাবে 1┌
) অথবা 2 (হিসেবে┏
)
বিদ্যমান লাইনগুলিকে বিবেচনা করে নির্দিষ্ট বেধের সাথে সাবম্যাট্রিক্সের জন্য একটি অভ্যন্তরীণ সীমানা রেন্ডার করুন।
x=4;y=1;w=2;h=3;t=2;
a=[' ┌───┐',
'┌┼┐ │',
'│└┼──┘',
'└─┘ ']
// output
r=[' ┌───┐',
'┌┼┐ ┏┪',
'│└┼─╂┨',
'└─┘ ┗┛']
একটি লাইন খণ্ডটি ওভাররাইট করার সময়, নতুন বেধটি পুরানো বেধের চেয়ে বেশি হওয়া উচিত এবং t
।
এই ইনপুট পার্স বা ইউনিকোড এর Kolmogorov জটিলতা খুঁজে নেওয়ার বিষয়ে নয়, তাই আপনি অনুমান হতে পারে a
, u
, x
, y
, w
, h
, t
ভেরিয়েবল হিসাবে আপনি উপলব্ধ। এছাড়াও, আপনি ফলটি পরিবর্তন r
বা আউটপুট না করে পরিবর্তে পরিবর্তন করতে পারেন, যতক্ষণ r
না একই ধরণের হয় a
।
যদি আপনার ভাষা আপনাকে ফাংশনগুলিতে কোড (সি, জাভা, হাস্কেল ইত্যাদি) স্থাপন করতে বাধ্য করে এবং আপনার সমাধানটিতে একটি ফাংশন থাকে তবে আপনি ফাংশন শিরোনাম এবং পাদচরণ বাদ দিতে পারেন।
আরও বড় পরীক্ষা:
x=4;y=1;w=24;h=4;t=1;
a=['┏┱─────┐ ┌┐ ┎──┲━┓',
'┠╂─────┘ ││ ┃ ┗━┛',
'┃┃ ││ ┃ ',
'┠╂──┲━━┓ ┏━━━━┓ ││ ┌╂┰┐ ',
'┃┃ ┗━━┩ ┃ ┃ └╆━┓ └╂┸┘ ',
'┃┃ │ ┃ ┃ ┃ ┃ ┃ ',
'┗┹─────┘ ┗━━━━┛ ┗━┛ ╹ ']
// output
r=['┏┱─────┐ ┌┐ ┎──┲━┓',
'┠╂──┬──┴─────────┼┼─────╂──╄━┛',
'┃┃ │ ││ ┃ │ ',
'┠╂──╆━━┓ ┏━━━━┓ ││ ┌╂┰┐│ ',
'┃┃ ┗━━╃──╂────╂─┴╆━┱──┴╂┸┴┘ ',
'┃┃ │ ┃ ┃ ┃ ┃ ┃ ',
'┗┹─────┘ ┗━━━━┛ ┗━┛ ╹ ']
0 <= x < x + w < width(a)
এবং0 <= y < y + h < height(a)
?