সিরিজ সম্পর্কে
প্রথমে, আপনি অন্য কোনও কোড গল্ফ চ্যালেঞ্জের মতো এটি ব্যবহার করতে পারেন এবং সিরিজটি মোটেও চিন্তা না করেই এর উত্তর দিতে পারেন। তবে, সমস্ত চ্যালেঞ্জ জুড়ে একটি লিডারবোর্ড রয়েছে। প্রথম পোস্টে সিরিজ সম্পর্কে আরও কিছু তথ্যের সাথে আপনি লিডারবোর্ডটি সন্ধান করতে পারেন ।
যদিও এই সিরিজের জন্য আমার কাছে অনেকগুলি ধারণাগুলি রয়েছে, ভবিষ্যতের চ্যালেঞ্জগুলি এখনও প্রস্তর হিসাবে স্থাপন করা হয়নি। আপনার কোনও পরামর্শ থাকলে দয়া করে আমাকে প্রাসঙ্গিক স্যান্ডবক্স পোস্টে জানান ।
হোল 2: একটি সাধারণ বিতরণ থেকে নম্বর
আমি বিশ্বাস করতে পারি না এটি এখনও করা হয়নি! আপনি সাধারণ বন্টন থেকে অঙ্কন করে এলোমেলো সংখ্যা উত্পন্ন করবেন । কিছু নিয়ম (সেগুলির বেশিরভাগ সম্ভবত স্বয়ংক্রিয়ভাবে বেশিরভাগ জমা দেওয়া দ্বারা আচ্ছাদিত হয় তবে তাদের কয়েকটি বিস্তৃতভাবে বিভিন্ন ভাষার মধ্যে ফলাফলের ধারাবাহিকতা নিশ্চিত করার জন্য রয়েছে):
আপনাকে ইনপুট হিসাবে দুটি অ-নেতিবাচক পূর্ণসংখ্যার গ্রহণ করা উচিত : একটি বীজ
S
এবংN
ফেরতের জন্য সংখ্যার পরিমাণ । আউটপুটটিN
ভাসমান পয়েন্ট সংখ্যাগুলির একটি তালিকা হতে হবে , গড় 0 এবং বৈকল্পিক 1 সহ একটি সাধারণ বিতরণ থেকে আঁকা । যখনই আপনার জমা দেওয়া একই বীজ দেওয়া হয় তখনS
এটি একই সংখ্যার উত্পাদন করা উচিত। বিশেষত, যদি এটি একবার এবং একবার সাথে কল করা হয় তবে দুটি আউটপুটগুলির প্রথম এন্ট্রিগুলি অভিন্ন হওয়া উচিত। তদ্ব্যতীত, কমপক্ষে 2 16 টি বিভিন্ন মানের বিভিন্ন ক্রম তৈরি করা উচিত।(S, N1)
(S, N2)
min(N1, N2)
S
আপনি কোনও বিল্ট-ইন এলোমেলো সংখ্যা জেনারেটর ব্যবহার করতে পারেন যা কোনও (প্রায়) ইউনিফর্ম বিতরণ থেকে সংখ্যা আঁকতে নথিবদ্ধ থাকে তবে আপনি
S
এটিতে যেতে পারেন এবং এটি কমপক্ষে 2 16 টি বিভিন্ন বীজ সমর্থন করে । যদি আপনি এটি করেন তবে আরএনজি আপনার যে কোনও প্রদত্ত সংখ্যার জন্য অনুরোধ করেছে তার জন্য কমপক্ষে 2 20 টি আলাদা মান ফিরে আসতে সক্ষম হবে।- আপনার উপলব্ধ অভিন্ন RNG একটি ছোট পরিসর থাকে, তাহলে না seedable বা সমর্থন খুব অল্প বীজ, আপনি হয় প্রথম উপরে একটি ভালোই বড় পরিসর একটি অভিন্ন RNG নির্মাণ করা আবশ্যক হয়, বিল্ট-ইন এক বা আপনি আপনার নিজের বাস্তবায়ন করতে হবে উপযুক্ত RNG ব্যবহার বীজ. এই পৃষ্ঠাটি এটির জন্য সহায়ক হতে পারে।
- আপনি যদি সাধারণ বিতরণ উত্পন্ন করার জন্য একটি প্রতিষ্ঠিত অ্যালগরিদম বাস্তবায়ন না করেন তবে দয়া করে সঠিকতার প্রমাণ অন্তর্ভুক্ত করুন। উভয় ক্ষেত্রেই, আপনি যে অ্যালগরিদমটি বেছে নিয়েছেন তা অবশ্যই তাত্ত্বিকভাবে সঠিক সাধারণ বিতরণ (অন্তর্নিহিত পিআরএনজি বা সীমাবদ্ধ-নির্ভুলতা ডেটা সীমাবদ্ধতা ব্যতীত) দিতে হবে।
- আপনার প্রয়োগটি ফ্লোটিং-পয়েন্ট সংখ্যাগুলি (কমপক্ষে 32 বিট প্রশস্ত) বা ফিক্স-পয়েন্ট সংখ্যা (কমপক্ষে 24 বিট প্রস্থ) ব্যবহার করা উচিত এবং সমস্ত গাণিতিক ক্রিয়াকলাপগুলি নির্বাচিত ধরণের পুরো প্রস্থের ব্যবহার করা উচিত।
- আপনার অবশ্যই সাধারণ বিতরণ বা গাউসিয়ান ইন্টিগ্রালগুলির সাথে সম্পর্কিত কোনও বিল্ট-ইন ফাংশনগুলি ব্যবহার করা উচিত নয়, যেমন ত্রুটি ফাংশন বা এর বিপরীত।
আপনি একটি সম্পূর্ণ প্রোগ্রাম বা একটি ফাংশন লিখতে পারেন এবং এসটিডিআইএন, কমান্ড-লাইন আর্গুমেন্ট, ফাংশন আর্গুমেন্ট বা প্রম্পটের মাধ্যমে ইনপুট নিতে পারেন এবং রিটার্ন ভ্যালুতে বা এসটিডিআউট (বা নিকটতম বিকল্প) এ মুদ্রণ করে আউটপুট উত্পাদন করতে পারেন।
S
এবং N
অ নেতিবাচক পূর্ণসংখ্যার, প্রতিটি কম 2 হতে হবে 20 । আউটপুট কোনও সুবিধাজনক, দ্ব্যর্থহীন তালিকা বা স্ট্রিং বিন্যাসে থাকতে পারে।
এটি কোড গল্ফ, তাই সংক্ষিপ্ততম জমা (বাইটে) জিতেছে। এবং অবশ্যই, ব্যবহারকারী প্রতি সংক্ষিপ্ততম জমাটিও সিরিজের সামগ্রিক লিডারবোর্ডে প্রবেশ করবে।
লিডারবোর্ড
সিরিজের প্রথম পোস্টটি লিডারবোর্ড উত্পন্ন করে।
আপনার উত্তরগুলি প্রদর্শিত হবে তা নিশ্চিত করার জন্য, দয়া করে নীচের মার্কডাউন টেমপ্লেটটি ব্যবহার করে প্রতিটি উত্তর শিরোনাম দিয়ে শুরু করুন:
# Language Name, N bytes
N
আপনার জমা দেওয়ার আকারটি কোথায় ? আপনি যদি নিজের স্কোরটি উন্নত করেন তবে আপনি পুরানো স্কোরগুলি শিরোনামে রেখে দিতে পারেন । এই ক্ষেত্রে:
# Ruby, <s>104</s> <s>101</s> 96 bytes
(ভাষাটি বর্তমানে দেখানো হয়নি, তবে স্নিপেটের প্রয়োজন এবং এটি বিশ্লেষণ করতে পারে এবং ভবিষ্যতে আমি একটি উপ-ভাষা লিডারবোর্ড যুক্ত করতে পারি))