এই চ্যালেঞ্জের জন্য আপনাকে পূর্ণসংখ্যার উপর দুটি ফাংশন, এফ এবং জি প্রয়োগ করতে হবে , যেমন f ∘ জি একটি কঠোরভাবে হ্রাস করা ফাংশন এবং জি-এফ একটি কঠোরভাবে বর্ধনশীল ফাংশন। অন্য কথায়, আপনি যদি কোনও দুটি পূর্ণসংখ্যা গ্রহণ করেন <বি , তবে চ (জি (ক))> চ (জি (বি)) এবং জি (ফ (ক)) <জি (চ (বি)) । পৃথকভাবে f এবং g এর উপর কোনও বিধিনিষেধ নেই , কেবলমাত্র তাদের প্রতিটি মানচিত্রের অবশ্যই একটি অন্য পূর্ণসংখ্যার সাথে অবশ্যই পূর্ণসংখ্যার জন্য মানচিত্র স্থাপন করা উচিত।
দয়া করে f এবং g এর একটি সংক্ষিপ্ত বিবরণ এবং কেন তাদের প্রয়োজনীয় সম্পত্তি আছে তার একটি যুক্তি অন্তর্ভুক্ত করুন ।
ক্রেডিট: এই চ্যালেঞ্জটি ২০১১ সালের রোমানিয়ান মাস্টার অফ ম্যাথমেটিক্স প্রতিযোগিতার একটি সমস্যা দ্বারা অনুপ্রাণিত হয়েছিল (যা একই বিষয় জিজ্ঞাসা করে তবে সংখ্যার পরিবর্তে বাস্তব সংখ্যাগুলিতে)। আপনি যদি সত্যই স্পলারদের চান তবে আপনি এখন কী কী অনুসন্ধান করবেন তা জানেন।
বিধি
এই চ্যালেঞ্জের "ফাংশন" শব্দটি গাণিতিক অর্থে একজনকে অন্যটির সাথে ম্যাপিংয়ের ক্ষেত্রে নেওয়া উচিত: আপনি দুটি প্রোগ্রাম বা দুটি ফাংশন লিখতে পারেন এবং ইনপুট গ্রহণ এবং আউটপুট সরবরাহের কোনও মানক পদ্ধতি ব্যবহার করতে পারেন , যথারীতি। আপনি প্রকৃত সংখ্যার পরিবর্তকের পরিবর্তে পূর্ণসংখ্যার স্ট্রিং উপস্থাপনা ব্যবহার করতে পারেন তবে ইনপুট এবং আউটপুটের ধরণগুলি অভিন্ন হওয়া উচিত, যাতে ফাংশনগুলি ম্যানুয়ালি প্রকারভেদে রূপান্তর না করেই রচনা করা যায়। মনে রাখবেন যে ধারণামূলকভাবে, f এবং g এর এখনও ℤ এ ফাংশন থাকা দরকার, সুতরাং আপনি একই সংখ্যার দুটি ভিন্ন স্ট্রিং উপস্থাপনা বা এর মতো কিছু ব্যবহার করে প্রতারণা করতে পারবেন না।
মনে রাখবেন যে ফাংশনগুলি অজ্ঞাতনাম হতে পারে , যতক্ষণ না তাদের নাম নিজের দ্বারা বা অন্য কোনও ফাংশন দ্বারা সংজ্ঞায়িত করা আপনার প্রয়োজন হয় না। যদি আপনি একটি বা উভয় ফাংশনটির নাম দেন, আপনি ধরে নিতে পারেন যে সেগুলি একই প্রোগ্রামে রয়েছে, যাতে তারা তাদের প্রয়োগের ক্ষেত্রে একে অপরকে উল্লেখ করতে পারে (যেমন
def f(x): return -g(x)
পাইথনে)।সাধারণ পূর্ণসংখ্যার ওভারফ্লো নিয়মগুলি প্রয়োগ হয়: আপনার সমাধানটি অবশ্যই আপনার ভাষার একটি অনুমানমূলক (বা সম্ভবত বাস্তব) সংস্করণে নির্বিচারে বৃহত পূর্ণসংখ্যার জন্য কাজ করতে সক্ষম হতে হবে যেখানে সমস্ত পূর্ণসংখ্যাকে ডিফল্টরূপে আনবাউন্ড করা হয়, তবে যদি আপনার প্রোগ্রামটি বাস্তবায়নের কারণে অনুশীলনে ব্যর্থ হয় বৃহত্তর পূর্ণসংখ্যার সমর্থন না করা, এটি সমাধানটিকে অকার্যকর করে না।
আপনি যে কোনও প্রোগ্রামিং ভাষা ব্যবহার করতে পারেন তবে নোট করুন যে এই ফাঁকগুলি ডিফল্টরূপে নিষিদ্ধ করা হয়েছে।
এটি কোড-গল্ফ , সুতরাং আপনার স্কোর হ'ল উভয় ফাংশনের বাইট সংখ্যা এবং সংক্ষিপ্ত বৈধ উত্তর জয়ের সমষ্টি ।