একজন ভারতীয় কিংবদন্তি দাবা খেলার কথিত উদ্ভাবকের গল্পটি বলেছিলেন, যিনি তাঁর খেলায় ভারতের সম্রাটকে এতটাই মুগ্ধ করেছিলেন যে তাকে জিজ্ঞাসা করা কিছু দিয়ে পুরস্কৃত করা হবে।
লোকটি বলল সে ভাত দিয়ে দিতে চায়। তিনি দাবা বোর্ডের প্রথম স্কোয়ারের জন্য ধানের শীষ, দ্বিতীয়টির জন্য দু'টি, তৃতীয়টির জন্য চারটি, চতুর্থটির জন্য আটটি, এবং on৪ তম স্কোয়ার অবধি চান।
সম্রাট আশ্চর্য হয়েছিলেন যে লোকটি এত ছোট পুরষ্কার চেয়েছিল, কিন্তু তাঁর গণিতবিদগণ গণনা শুরু করার সাথে সাথে তিনি তার একটি প্রদেশ হারিয়েছিলেন।
কার্য
একটি অনুমানক দাবা বোর্ডের পাশের দৈর্ঘ্য (যা একটি ডিফল্ট দাবাবোর্ডের উপর 8) এবং বর্গক্ষেত্রের মধ্যে গুণক (যা কিংবদন্তীর মধ্যে 2) গণনা করে সম্রাটকে সেই ব্যক্তিকে অবশ্যই যে ভাত দিতে হবে তা গণনা করুন।
নোট
পার্শ্ব দৈর্ঘ্য সর্বদা একটি ধনাত্মক পূর্ণসংখ্যার হবে। গুণক পরিবর্তে যেকোন ধরণের যুক্তিযুক্ত সংখ্যা হতে পারে।
যদি আপনার পছন্দের ভাষাটি খুব বেশি সংখ্যক প্রদর্শন করতে না পারে, ততক্ষণ আপনার প্রোগ্রামটি সঠিকভাবে ছোট ইনপুটগুলি প্রক্রিয়া করতে পারে process
এছাড়াও যদি আপনার পছন্দের ভাষাটি বৃহত্তর মানগুলিকে গোল করে (ঘৃণ্য চিহ্ন সহ), যদি মানগুলি প্রায় সঠিক হয় তবে ঠিক আছে।
Testcases
Input (side length, multiplier) => Output
8, 2 => 18446744073709551615
3, 6 => 2015539
7, 1.5 => 850161998.2854
5, -3 => 211822152361
256, 1 => 65536
2, 2 => 15
2, -2 => -5
স্পষ্ট সূত্র দয়া করে নোট করুন
result = (multiplier ^ (side ^ 2) - 1) / (multiplier - 1)
multiplier = 1
হিসাবে ভুল সম্পাদন করে
1 ^ (side ^ 2) - 1 = 0
1 - 1 = 0
0 / 0 != side ^ 2 (as it should be)
স্কোরিং
এটি কোড-গল্ফ। বাইট জিতে সংক্ষিপ্ত উত্তর।
If your language of choose can't display too large numbers, it's ok as long as your program can correctly process smaller inputs
সাবধান, এটি অতীতে সমস্যা তৈরি করেছে। meta.codegolf.stackexchange.com/a/8245/31716