মনে করুন স্থানগুলির এই গ্রিডটি X
কিছু অদ্ভুত আকারের খালি বরফ কিউব ট্রেগুলির ক্রস বিভাগটি উপস্থাপন করে :
X X X
X X X XX X XX X
XXXXXX XXXXXXXXXXXXX
এর ব্যতীত কলামগুলি ট্রেগুলিতে X
গর্ত বা ফাঁকগুলি উপস্থাপন করে যা জল ধরে রাখতে পারে না, অসীম ক্ষমতা ডুবে যায়। গ্রিডের বামে বা ডানদিকের প্রান্ত থেকে পড়া জল এই অবিরাম সিঙ্কেও যায়।
যদি আমরা ট্রেগুলির উপরে একটি নল অবস্থান করি এবং সমস্ত বগিগুলির জলের স্তর স্থিতিশীল না হওয়া পর্যন্ত তাদের জল ভর্তি করতে দেওয়া হয় তবে সঠিক অংশটি যেগুলি পূর্ণ হয়ে যায় তা নির্ভর করে যেখানে জল প্রবাহটি ট্রেগুলির উপরে অবস্থিত ঠিক সেখানে নির্ভর করবে। (অনুমান করুন যে কোনও স্প্ল্যাশ ছাড়াই জলের একটি পাতলা, অবিচলিত ধারা রয়েছে))
উদাহরণস্বরূপ, যদি আমাদের কলটি F
খুব বাম গ্রিড কলামের উপরে থাকে
F
X X X
X X X XX X XX X
XXXXXX XXXXXXXXXXXXX
জল X
সেই কলামের শীর্ষে নেমে গিয়ে বাম এবং ডানদিকে ছড়িয়ে পড়ত , বাম অর্ধেকটি নীচের সিঙ্কে ছড়িয়ে পড়ত এবং ডান অর্ধেকটি 2 × 1 বগিটি পূরণ করে। বগিটি পূর্ণ হয়ে গেলে, জলের প্রবাহের ডান অর্ধেক কোথাও প্রবাহিত হয় না তবে ডুবে যায় এবং সর্বত্র জলের স্তরটি স্থিতিশীল থাকে।
কলটি বন্ধ করে দিয়ে ট্রেটি এখন এই রকম দেখাচ্ছে: ( ~
জল হিসাবে)
X X X
X~~X X XX X XX X
XXXXXX XXXXXXXXXXXXX
একইভাবে, আমরা যদি কল এর মতো করে রাখি:
F
X X X
X X X XX X XX X
XXXXXX XXXXXXXXXXXXX
এটি দুটি বাম দিকের অংশটি পূরণ করবে তবে বাকী পানি সরে যাবে:
X X X
X~~X~X XX X XX X
XXXXXX XXXXXXXXXXXXX
আমরা যদি কল এর মতো করে রাখি:
F
X X X
X X X XX X XX X
XXXXXX XXXXXXXXXXXXX
প্রবাহের বাম অর্ধেকটি ডুবে প্রবাহিত হবে তবে ডান অর্ধেকটি শেষ পর্যন্ত তিনটি ডান দিকের অংশটি পূরণ করবে কারণ সমতল পৃষ্ঠে জল অনুভূমিকভাবে কতদূর যেতে পারে তার সীমা নেই there's
X X~X
X X X XX~X~~XX~~~X
XXXXXX XXXXXXXXXXXXX
তবে এটির মতো অবস্থিত:
F
X X X
X X X XX X XX X
XXXXXX XXXXXXXXXXXXX
সমস্ত জলের ড্রেন দূরে রয়েছে এবং কোনও বগি পূরণ করা হয়নি:
X X X
X X X XX X XX X
XXXXXX XXXXXXXXXXXXX
চ্যালেঞ্জ
এমন একটি প্রোগ্রাম বা ফাংশন লিখুন যা ফাঁকা স্থানের আয়তক্ষেত্রাকার গ্রিড X
এবং এর একটিতে নিয়ে যায় F
। উপরের সারিতে সর্বদা থাকে F
এবং অন্যথায় কেবল স্থান থাকে। X
প্রতিটি কলামের 's (যদি থেকে থাকে তাহলে) গ্রিড বেস থেকে একটি কঠিন লাইন আপে প্রসারিত হবে অর্থাৎ কোন গুহা বা overhangs হবে।
উপরে উল্লিখিতভাবে কলটি F
জল দিয়ে কি করতে পারে তা পূরণ করার পরে গ্রিডটি মুদ্রণ করুন বা ফিরে দিন ~
। উপরের F
সারিটি আউটপুট ছাড়ুন ।
কল সারি ছাড়া গ্রিড পৃথকভাবে সর্বনিম্ন 1 × 1 হবে
F X
আপনার সমর্থন করা প্রয়োজন এমন ক্ষুদ্রতম ইনপুট।
ইনপুটটি সম্পূর্ণ পাঠ্যের আয়তক্ষেত্র হিসাবে আসবে। শীর্ষস্থানীয় এবং পিছনের স্থানগুলি ইনপুট এবং আউটপুটটিতে গুরুত্বপূর্ণ। যেমন ইনপুট
F X X XXXX
ফলাফল করা উচিত
X~~X XXXX
(অগ্রণী এবং পিছনের স্থানগুলি নোট করুন)
ইনপুট বা আউটপুটে একটি একক পেছনের নতুন লাইন রাখা ভাল।
আপনি যে কোনো চার স্বতন্ত্র ব্যবহার করতে পারেন মুদ্রণযোগ্য হওয়া ASCII স্থান জায়গায় অক্ষর, ,
X
, ।F
~
বাইটের মধ্যে সংক্ষিপ্ততম কোডটি জয়ী।
বড় উদাহরণ:
ইনপুট:
F
X X
X X X
X XXX X X X X X
X X XXXXXXX X XXX XXXXXXX X X
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXX
আউটপুট:
X~~~~~~~~~~~~~X
X~~~~~~~~~~~~~X~X
X~~~~~~~~~~~~XXX~~~~~~~X~~~~X~X~~~~~~~~~~~X X
X~~~X~~~~~XXXXXXX~~~~~~X~~~~XXX~~~~~XXXXXXX X X
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXX
zip()
<3