পটভূমি
কয়েক মাস আগে, আপনার জীবনের দু: সাহসিক কাজ শুরু হতে চলেছিল। এখন, এই নির্দিষ্ট মুহুর্তে (হ্যাঁ, এখন), কয়েক মাস কষ্ট এবং কঠোর পরিশ্রমের পরে, আপনি এবং একদল বন্ধু বিশ্বের শীর্ষে দাঁড়িয়ে আছেন on হ্যাঁ, আপনি ঠিক, আপনি শিখর উপর Sagarmatha ।
যাইহোক, জিনিসগুলি আপনার পছন্দ মতো চলছে না। একটি ঘন কুয়াশা আপনাকে ঘিরে রেখেছে এবং অবিশ্বাস্যরূপে খারাপ-চেহারার ঝড় যতটা দ্রুত আসতে পারে। আপনি যাওয়ার পথে কোনও দড়ি ঠিক করেন নি এবং আপনার পদচিহ্নগুলি বরফে haveেকে দেওয়া হয়েছে। আপনি যদি বাঁচতে চান (অন্তত আজকের জন্য), আপনাকে যত তাড়াতাড়ি সম্ভব সেখান থেকে বেরিয়ে আসতে হবে, তবে আপনাকে প্রথমে পর্বতের কোন মুখটি অবতরণ করা উচিত তা জানার একটি উপায় খুঁজে পাওয়া উচিত।
ভাগ্যক্রমে, আপনি আপনার সাথে নিয়ে এসেছিলেন আপনার স্যাট ফোনটি যা ভ্রমণের আগে আপনি সংশোধন করেছিলেন যাতে আপনি এতে প্রোগ্রাম প্রোগ্রাম করতে এবং চালাতে সক্ষম হন।
চ্যালেঞ্জ
আপনি আপনার ফোনে একটি ASCII- পুরাতন-ফ্যাশন-অপঠনযোগ্য-অন-দ্য ওয়ার্ল্ড উপায়ে পর্বতের মানচিত্রটি ডাউনলোড করতে সক্ষম হয়েছেন। আপনার কাজটি হ'ল সিদ্ধান্ত নিতে হবে যে পর্বতের কোন মুখটি সবচেয়ে সহজ উত্সব উপস্থাপন করে যাতে আপনি বেঁচে থাকার সম্ভাবনা বাড়িয়ে তুলতে পারেন। এটি করার জন্য, আপনার ফোনে এমন একটি কোড কোড করার উজ্জ্বল ধারণা রয়েছে যা নীচে সবচেয়ে সহজ উপায় বলে দেবে। (অস্বীকৃতি: পেশাদাররা এই ক্রিয়াকলাপগুলি করেছে this এই বর্ণনার সময় কোনও প্রোগ্রামার আহত হয়নি Please দয়া করে, বাড়িতে এটি চেষ্টা করবেন না))
মানচিত্রগুলি কেবলমাত্র অক্ষর /এবং \(প্লাস স্পেস এবং নিউলাইন) দ্বারা তৈরি। যে কোনও মানচিত্রে, পর্বতের শীর্ষগুলি সর্বদা প্রতিনিধিত্ব করে
/\
\/
এবং শিখরের প্রতিটি দিক ( 1,2,3বা 4) থেকে আপনি সর্বদা পর্বতের নীচে একটি "সম্ভাব্য" পথ খুঁজে পাবেন।
1 /\ 2
3 \/ 4
রুটগুলি সর্বদা পরবর্তী উপায়ে উপস্থাপন করা হয়:
\
Steep-> / /
/ / <-Flat
/ \
Flat-> \ \
/ \ <-Steep
/\
\/
যেখানে প্রতিটি নতুন অক্ষর হয় তার পূর্বসূরীর বাম / ডানদিকে এক জায়গায়। প্রতিটি চরিত্রের অর্থ:
- যদি স্ল্যাশ / ব্যাকল্যাশ এর শীর্ষে সমান্তরাল হয় -> 'খাড়া' অংশ হিসাবে গণনা করা হয়।
- যদি স্ল্যাশ / ব্যাকস্ল্যাশ এর শীর্ষে লম্ব হয় -> 'ফ্ল্যাট' অংশ হিসাবে গণনা করা হয়।
* আরও রেফারেন্সের জন্য উপরের গ্রাফিকটি দেখুন।
দ্রষ্টব্য : উভয় পক্ষের বিভিন্ন দৈর্ঘ্য থাকতে পারে এবং শিখর গঠন করে এমন অক্ষরগুলিও তাদের পাশের অংশ হিসাবে গণনা করতে পারে। ড্রয়ের ক্ষেত্রে, আপনি যে কোনও একটি চয়ন করতে পারেন।
স্ট্যান্ডার্ড লুফোলগুলি অনুমোদিত নয়।
ইনপুট
পর্বতের মানচিত্রের প্রতিনিধিত্বকারী একটি স্ট্রিং বা একই তথ্য সমেত একটি সমতল পাঠ্য ফাইল।
উভয় ক্ষেত্রেই
C:\....\file.txt
অথবা
\
/ /
/ /
/ \
\ \
/ \
/\
\/
\ /
\ \
\ \
\ \
/ /
স্ট্রিং হিসাবে বৈধ ইনপুট হয়।
আউটপুট
আউটপুট, হয় আপনি একটি stdout- এ প্লেইন টেক্সট অথবা দ্বারা একটি ফাইল উত্পাদন করা উচিত ক্ষুদ্রতম গড় steepness সঙ্গে দিকে হওয়া ASCII প্রফাইল উপস্থাপনা ব্যবহার _ফ্ল্যাট অংশের জন্য এবং /খাড়া অংশের জন্য গড় steepness সহ দিকে (number of "/")/(total chars)।
উপরের মানচিত্রের জন্য আউটপুট উদাহরণ:
/
___/
/
AS:0.5
আপনার প্রোফাইল এবং গড় খাড়া হওয়া ততক্ষণ বিন্যাসটি গুরুত্বপূর্ণ নয়।
স্কোরিং
কি? আপনি কি নিজের এবং আপনার বন্ধুর জীবন বাঁচানোর এবং প্রথম প্রোগ্রামার যিনি বিশ্বের শীর্ষে প্রোগ্রামিং করেছেন তার চেয়ে আরও ভাল পুরষ্কার চান? ঠিক আছে ... এটি কোড গল্ফ, তাই বাইট জেতে সংক্ষিপ্ততম প্রোগ্রাম।
পরীক্ষার মামলা
ইনপুট:
\
/ /
/ /
/ \
\ \
/ \
/\
\/
\ /
\ \
\ \
\ \
/ /
আউটপুট:
/
___/
/
AS=0.5
ইনপুট:
/
\ /
/ /
\ /
\ /
/ /
/\
\/
\ /
\ \
\ \
\ \
/ /
/
/
আউটপুট:
______/
AS=0.143 (1/7)
ইনপুট:
/ \
\ \
/ /
/ \
/\
\/
\ /
\ /
\ /
/ \
আউটপুট:
/
/
/
_/
AS=0.8