সান্টাকে প্রতিটি বাড়িতে উপহার প্রদানের জন্য তাকে সাহায্য করার জন্য কতগুলি এলভের দরকার হবে তা নির্ধারণের জন্য কিছু সহায়তা প্রয়োজন।
কয়লা উপহারের তুলনায় যথেষ্ট ভারী, সুতরাং সান্তার বাড়ির প্রতিটি দুষ্টু ব্যক্তির জন্য তিনটি এলভের প্রয়োজন হবে। সান্তা উপহার দেওয়ার জন্য মাত্র দুটি এলভের প্রয়োজন।
সান্তার মানচিত্রে একটি বাড়ি একটি দ্বারা উপস্থাপিত হয় *
এবং প্রতিটি ঘর একটি দ্বারা বিভক্ত হয় +
।
বাড়ির দুপাশে একটি সংখ্যা থাকবে - বামদিকে একটি ঘরের দুষ্টু লোকের প্রতিনিধিত্ব করে এবং ডানদিকে একটি বাড়ির সুন্দর লোকের প্রতিনিধিত্ব করে। যদি একদিকে কোনও সংখ্যা না থাকে তবে এটি 0 হিসাবে ব্যাখ্যা করা হয়।
যারা ক্রিসমাস স্পিরিটে নেই তাদের সাথে সান্টা পরিদর্শন করেন না (তারা কয়লারও প্রাপ্য নয়), তাই কখনও কখনও কোনও বাড়ির দু'পাশে নম্বর নাও থাকতে পারে। এই ক্ষেত্রে, সান্তা কোনও ধনুকের সাহায্যের প্রয়োজন নেই
উদাহরণস্বরূপ, সান্তার মানচিত্রগুলির মধ্যে একটির মতো দেখতে এটি হতে পারে
1*3+2*2+1*+*2
প্রথম বাড়িতে 1 টি দুষ্টু এবং 3 টি সুন্দর, সান্তার নয়টি এলভের দরকার হবে । দ্বিতীয়টিতে 2 টি দুষ্টু এবং 2 টি সুন্দর, সান্তার দশটি ধনুকের প্রয়োজন হবে । তৃতীয় ঘরে 1 টি দুষ্টু এবং 0 টি সুন্দর, সান্তার জন্য তিনটি ধনুকের প্রয়োজন হবে , এবং শেষ বাড়িতে 0 টি দুষ্টু এবং 2 টি সুন্দর, সান্তার জন্য চারটি ধনুকের প্রয়োজন হবে ।
যদিও এটি সান্তার মানচিত্রগুলির একটির ওভার সিম্প্লিফাইড সংস্করণ। সাধারণত সান্তার মানচিত্রে একাধিক লাইন থাকে এবং তার তালিকায় আরও ভাল ফিট করার জন্য বর্গাকার আকারে থাকে। একটি সাধারণ মানচিত্র এ জাতীয় কিছু দেখতে পারে ( \n
প্রতিটি লাইনের শেষে)
1*2+*+*4+1*
2*4+3*+1*6+*
*+*+4*2+1*1
*4+*3+1*+2*3
3*10+2*+*5+*
এই মানচিত্রে, সান্তা ((1 + 0 + 0 + 1 + 2 + 3 + 1 + 0 + 0 + 0 + 4 + 1 + 0 + 0 + 1 + 2 + 3 + 2 + 0 + 0) * 3) + ((2 + 0 + 4 + 0 + 4 + 0 + 6 + 0 + 0 + 0 + 2 + 1 + 4 + 3 + 0 + 3 + 10 + 0 + 5 + 0) * 2)
= 151 ধনুকের প্রয়োজন
চ্যালেঞ্জ
প্রতিটি বাড়িতে পণ্য সরবরাহের জন্য তার কতগুলি এলভের দরকার তা নির্ধারণ করতে সান্টাকে সহায়তা করুন!
ঘর
- একটি ঘর একটি দ্বারা প্রতিনিধিত্ব করা হয়
*
- ঘরগুলি বিভক্ত হয়
+
- ঘরের বামে সংখ্যা দুষ্টু মানুষের সংখ্যার প্রতীক (কোনও সংখ্যা মানে 0 নয়)
- ডান দিকের সংখ্যাটি সুন্দর লোকের সংখ্যাকে প্রতীকী করে (কোনও সংখ্যা মানে 0 নয়)
- ইনপুটটিতে নতুন লাইনগুলি (
\n
) থাকতে পারে , যা বিভাজন হিসাবেও পরিচালনা করা উচিত
পরী
- দুষ্টু লোকদের জন্য সান্তাকে তিনটি এলভের সাহায্য প্রয়োজন (কয়লা উপহারের চেয়ে অনেক বেশি ভারী)
- সান্তা সুন্দর লোকের জন্য দুটি এলভের সাহায্য দরকার
- দু'দিকে যদি কোনও সংখ্যা না থাকে তবে সান্তা সেই বাড়িটি দেখতে পাবেন না এবং এর জন্য কোনও এলভের দরকার নেই
কি করো
তাকে বাসায় উপহার দেওয়ার জন্য সাহায্য করার জন্য প্রয়োজনীয় এলভ সংখ্যাটি প্রিন্ট করুন। যেহেতু সমস্ত সান্তাকে জানতে হবে যে কয়টি এলভাস আনতে হবে, আপনাকে কেবল বাড়ির তালিকার জন্য প্রয়োজনীয় সংখ্যক ধনুকের মুদ্রণ করতে হবে
পরীক্ষার মামলা
1*1 => 5
1*2 => 7
2*1 => 8
1* => 3
*1 => 2
* => 0
1*1+1*1 => 10
1*2+2*1 => 15
1*+*1 => 5
1*1+*+1*1 => 10
*+*+*+* => 0
বিধি
- ইনপুটটি হয় কোনও ফাংশনে আর্গুমেন্ট হিসাবে নেওয়া যেতে পারে, বা এসটিডিআইএন বা সমতুল্য থেকে নেওয়া যেতে পারে
- আউটপুট হয় কোনও ফাংশনের রিটার্ন মান হতে পারে, বা STDOUT বা সমতুল্যে মুদ্রিত হতে পারে
- ইনপুট শুধুমাত্র সংখ্যা, উপস্থিত থাকবে
+
,*
এবং নতুন লাইন\n
- ক্রিসমাস উপলক্ষে আউটপুটটিতে কেবলমাত্র এলভের মোট সংখ্যা হওয়া উচিত যা সান্টাকে সাহায্যের প্রয়োজন
- স্ট্যান্ডার্ড লুফোলস প্রযোজ্য
স্কোরিং
কোড চালানোর জন্য সান্টা স্লিঘে উপহারের ফলে তাকে কম স্থান দেওয়া হয়েছে, তাই তার পক্ষে সবচেয়ে কম সংখ্যক কোড পাওয়া দরকার (এটি যদি বোঝা যায় না তবে চিন্তা করবেন না you আপনি যদি সান্তার যুক্তি নিয়ে প্রশ্ন করেন তবে আপনি দুষ্টু তালিকায় শেষ করবেন) )। সান্টার সঠিক যুক্তির কারণে , বাইটে সংক্ষিপ্ততম জমাটি জয়!
লিডারবোর্ড
এটি একটি স্ট্যাক স্নিপেট যা ভাষার দ্বারা লিডারবোর্ড এবং বিজয়ীদের একটি সংক্ষিপ্তসার উভয়ই উত্পন্ন করে।
আপনার উত্তরটি প্রদর্শিত হবে তা নিশ্চিত করতে, দয়া করে নীচের মার্কডাউন টেমপ্লেটটি ব্যবহার করে আপনার উত্তরটি শিরোনাম দিয়ে শুরু করুন
## Language Name, N bytes
যেখানে এন আপনার জমা দেওয়ার আকার, বাইটগুলিতে
যদি আপনি আপনার শিরোনামে একাধিক সংখ্যা অন্তর্ভুক্ত করতে চান (উদাহরণস্বরূপ, পুরানো স্কোরগুলি ধরে ফেলা, বা বাইট গণনাতে পতাকা সহ) কেবলমাত্র নিশ্চিত হয়ে নিন যে আসল স্কোরটি আপনার শিরোনামের শেষ সংখ্যা is
## Language Name, <s>K</s> X + 2 = N bytes
hello-world.c
। জোজডমো যেমন বলেছিলেন (আমি নিশ্চিত আমি জোজডমোকে জানি, তিনি আমাদের সিসডএম হতে পারেন) এবং তারপরে যখন স্লাইট পুলে পুনরায় স্থাপনের সময় হবে বা কোনও শিশু যখন তাদের দেখেছে তখন তা জানানোর জন্য একটি কলব্যাক ব্যবহার করুন।
max(naughty) + max(nice)
পুরো পথের জন্য তার কি কেবল সর্বাধিক এলভের দরকার হবে না ? আমি ভেবেছিলাম তাঁর সাথে উড়ন্ত এক ধরণের এলভ রয়েছে, তবে সম্ভবত আপনার কাছে এর অভ্যন্তরীণ তথ্য রয়েছে এবং এই বছর আমার আরও তাকাতে হবে। :)