কার্য
একটি প্রোগ্রাম বা ফাংশন যা প্রস্থ একটি চিত্র লাগে লিখুন w
এবং উচ্চতা h
এবং দুটি পূর্ণসংখ্যার a <= w/2
এবং b <= h/2
সঙ্গে মাত্রা, এবং ইমেজ এর কোন ascii শিল্প উপস্থাপনা আউটপুট, a
এক্স b
।
নিম্নলিখিত পদক্ষেপের (বা একই আউটপুট সহ অন্য কোনও প্রক্রিয়া) মাধ্যমে আসকি শিল্প তৈরি করা উচিত:
মাপ পরিবর্তন করুন
w
এক্সh
ছবিতে2a
এক্স2b
।(x, y)
পুনরায় আকারিত চিত্রের পিক্সেলের রঙ নীচের কোণগুলির সাথে আয়তক্ষেত্রের অভ্যন্তরে মূল চিত্র থেকে সমস্ত পিক্সেলের রঙের গড়ের সমান হওয়া উচিত:(floor[x * w/2a], floor[y * h/2b]) (ceil[(x+1) * w/2a], ceil[(y+1) * h/2b])
পুনরায় আকারযুক্ত চিত্রটি রঙের লাল, সবুজ এবং নীল উপাদানগুলির গড় গ্রহণ করে এবং প্রতিটি উপাদানকে এই গড়তে সেট করে আলাদা করা উচিত।
নীচের নিয়মগুলি অনুসরণ করে পিক্সেলের প্রতিটি 2x2 ব্লকের জন্য একটি অক্ষর আউটপুট করা উচিত:
- চলুন
e = 3 - floor[color/64]
, যেখানে রঙ শীর্ষ-বাম পিক্সেলের রঙের লাল উপাদানকে বোঝায় (0..255 এর মধ্যে রয়েছে)। আসুনf
,g
এবংh
এই মানটি উল্লেখ করুন, তবে যথাক্রমে উপরের-ডান, নীচে-বাম এবং নীচে-ডান পিক্সেলের জন্য। - দিন
z
গড় হতেe
,f
,g
,h
। - নিম্নলিখিতটির সাথে সম্পর্কিত অক্ষরটি আউটপুট করুন (সাদা একটি পিক্সেল যেখানে
3 - floor[color/64]
শূন্য, এবং ধূসর ননজারো উপস্থাপন করে)। - = একটি স্থান আউটপুট (
)
- বা = আউটপুট
"
যদিe (or f) >= 2
এবং'
অন্যথায়। - বা = আউটপুট
,
যদিg (or h) >= 2
এবং.
অন্যথায়। - বা = আউটপুট
-
- বা = আউটপুট
;
- = আউটপুট
\
- = আউটপুট
/
- = আউটপুট
J
- = আউটপুট
L
- = আউটপুট
7
- = আউটপুট
P
-
z = 1
: আউটপুট*
।z = 2
: আউটপুটC
।z = 3
: আউটপুট#
।
- চলুন
অন্যান্য নোট: উপরের পদক্ষেপে গৃহীত সমস্ত গড়ের পূর্ণসংখ্যা বিভাগ (অর্থাত্ 0 এর দিকে গোল করা) ব্যবহার করা উচিত।
আপনি চিত্রগুলি পড়ার জন্য একটি লাইব্রেরি ব্যবহার করতে পারেন, তবে লাইব্রেরিগুলি পুনরায় আকার এবং বিচ্ছিন্নতার পদক্ষেপগুলির জন্য ব্যবহার করা যাবে না।
ইনপুট
আপনার প্রোগ্রামটি ডেটা তিন টুকরা নিতে হবে:
- একটি চিত্র. এই চিত্রটি আপনার পছন্দের যে কোনও বিন্যাসে থাকতে পারে (যেমন পিএনজি, পিপিএম)
- আসকি শিল্পের প্রস্থ (অক্ষরের সংখ্যায়)
- আসকি শিল্পের উচ্চতা (অক্ষরের সংখ্যায়)
ইনপুটটি STDIN এর মাধ্যমে পড়তে পারে, কমান্ড-লাইন আর্গুমেন্ট হিসাবে ভেরিয়েবল হিসাবে সংরক্ষণ করা হয় passed
আউটপুট
আপনার প্রোগ্রামটি চিত্র থেকে এবং উপরে বর্ণিত প্রক্রিয়াটির মাধ্যমে উত্পন্ন আসকি শিল্পকে আউটপুট দেবে। প্রতিটি লাইন একই প্রস্থ হতে হবে (প্রস্থ ইনপুট হিসাবে পাস) এবং অতিরিক্ত স্পেস যোগ করা বা অপসারণ করা যাবে না। শেষ লাইনে একটি পেছনের নতুন লাইন থাকতে পারে তবে এটি বাধ্যতামূলক নয়। ফাঁকা লাইন (কেবলমাত্র ফাঁকা ফাঁকা রেখাগুলি) বাদ দেওয়া উচিত নয়।
উদাহরণ
সমস্ত চিত্র উইকিপিডিয়া থেকে নেওয়া হয়েছিল এবং পাবলিক ডোমেনে প্রকাশ করা হয়েছিল। আপনার প্রোগ্রামটি সমস্ত চিত্র এবং বৈধ ইনপুটগুলির জন্য কাজ করবে বলে আশা করা হচ্ছে।
প্রস্থ = 52, উচ্চতা = 25:
.-- *** - ----। - ********** এল .-- .-- 7 ---- পি- .J ****************। । ********* \। , ****************** এল \ জে ********** '। - ********************। জে *********** এল / জে *********************; ./*************.L ; ********************* পি জে **************; 7; । ********************** '। *************** ;; * ; **********************; ***************; জে *। *********************** ******* পি ******** '**; সি ********************* সি ******* পি; *******। **; সি ********************** জে ***************; **; সি *********************; **************** **। ********************** '*************** পি; ** জে ********************* পি *************** / *** । ********************** 7 ************* 'জে **; ; ******************** সি "'পি *********** পিজে ***' "7 ****************** সি" '********** পি। ** সি; '* সি *************'; ********* - জে ** সিপি '* সি ********** পি 7 ** 7 ** পি / - **** পি - * সিসিসিসি * পি- '* ******** পি' '---' --- '
প্রস্থ: 70, উচ্চতা: 3:
---------------------------। .---------------- জে *************************** পি-জে ***************** *** / জে **; ---------- ********* পি --------- '-------------------- - '
প্রস্থ: 50, উচ্চতা: 25:
.J --- .জে * পি --- জে * এল--। জে *** 'এল-জে *********** - জে ****; **************** এল ; ***** '। জে ******************** জে **** 7 ************************ পি ** সিসি *; । ********* এলজে *********** P- ** সি * পি 'জে ********************** - 7 * সি * এল **********************; জে * সি **; **********************; জেসি ** সি **। ; ; ******** সিসিসি * সি ** cccc ** "* ***** এল। * ***** সিসিসিসিসি **** সিসি ** ' - *****। -জে - ** সি * সি * সিসি ****** সিসি * ' ; ** সিসি ***; '** সিসিসি ***** cccc *; '- **** - - *** সিসিসিসি *** - '------'
প্রস্থ: 26, উচ্চতা: 17:
-, এল জে - ** এল সি সি # জে ;; পিএল, সি # " .পিপি 7. জেসি 7 পি ;; * জে ;; , C'C; জে; সিসি; এল সি "# * এল 7-পি; *; পিসি 7 সিএল *** জে * পিসি '# '7 # সি * সি # পি'; পি জেসি # সি- জে # সিসিসি # এল। জেসি # সিজেসিসি ## সি; ; # - - #, সিসিসি # সিসিসিসিসিসিসি ; * .- -সি; ; CCCCCCCCCCCC ; **** জে ** এল; সিসিসিসিসিসিসিসিসিসিসি ; *******; 'CCCCCCCCCCCP '*******' সিসিসিসিসিসিসিসিসিসিসি ' '* পি -7 *' "সিসিসিপি '- '---
এটি কোড-গল্ফ , তাই সংক্ষিপ্ত উত্তরটি জেতে।