কপসের থ্রেড
এই থ্রেডে, আপনার কাজটি কোনও পূর্ণসংখ্যার সিরিজ উত্পন্ন করতে পুনরাবৃত্তি-ভিত্তিক প্রোগ্রাম / ফাংশন করা। ডাকাতরা চেষ্টা করবে এবং ডাকাতদের থ্রেডে একটি সংক্ষিপ্ত অ-পুনরাবৃত্ত সমাধান সমাধান করবে ।
প্রতিদ্বন্দ্বিতা চ্যালেঞ্জ
অনেক ভাষায়, পুনরাবৃত্তি ফাংশন একটি প্রোগ্রামিং টাস্ককে উল্লেখযোগ্যভাবে সহজ করতে পারে। তবে সঠিক পুনরাবৃত্তির জন্য সিনট্যাক্স ওভারহেড কোড-গল্ফে এর ব্যবহার্যতা সীমাবদ্ধ করতে পারে।
পুলিশ একটি প্রোগ্রাম বা ফাংশন একটি একক পূর্ণসংখ্যা গ্রহণ তৈরি করবে n
, যা প্রথম উত্পন্ন করবে n
একটি পূর্ণসংখ্যা সিরিজের এন্ট্রি, শুধুমাত্র পুনরাবৃত্তির ব্যবহার 1 । তাদের এন্ট্রিটি নিরাপদ হিসাবে চিহ্নিত করার জন্য ক্রমটি উত্পন্ন করার জন্য একটি ছোট সংলগ্ন উপায় আছে কিনা তাও তাদের নিশ্চিত করা উচিত।
ডাকাত একটি খুঁজে পেতে চেষ্টা করবে খাটো একই পূর্ণসংখ্যা সিরিজ উৎপাদিত একই ভাষায় প্রোগ্রাম বা ফাংশন,, কোন পুনরাবৃত্তির ব্যবহার 2 ।
যদি দশ দিনের মধ্যে (২৪০ ঘন্টা) পুলিশদের জমা দেওয়ার ব্যবস্থা না ফেলা হয়, তবে পুলিশ তাদের নিজের সমাধান প্রকাশের মাধ্যমে সংক্ষিপ্ততর পুনরাবৃত্তিমূলক পদ্ধতি গ্রহণ করা সম্ভব প্রমাণ করবে। তারপরে তারা তাদের জমাটি নিরাপদ হিসাবে চিহ্নিত করতে পারে ।
পুলিশ চ্যালেঞ্জের বিজয়ী সবচেয়ে সংক্ষিপ্ত হবে ( কোড-গল্ফ অনুযায়ী ) পুনরাবৃত্তি-ভিত্তিক জমা নিরাপদ হিসাবে চিহ্নিত।
ডাকাতদের চ্যালেঞ্জের বিজয়ী হবেন সেই ডাকাত যিনি সর্বাধিক সমাধানগুলিকে ক্র্যাক করেছিলেন।
1: এটি কেবল সিনট্যাক্সে পুনরাবৃত্ত হওয়া প্রয়োজন; টেল কল অপ্টিমাইজেশনের জন্য আপনাকে উদ্বিগ্ন হওয়ার দরকার নেই।
2: আবার, সিনট্যাক্সে অ-পুনরাবৃত্ত; সুতরাং আপনি কোনও পুনরাবৃত্ত সমাধান সমাধান করতে পারবেন না এবং লেল কল অপ্টিমাইজেশনের জন্য লুপের জন্য এটি সংকলিত দাবি করতে পারবেন না।
জমা দেওয়ার প্রয়োজনীয়তা
প্রতিটি জমা দেওয়ার ক্ষেত্রে একটি একক পূর্ণসংখ্যা n
(শূন্য- বা এক-ভিত্তিক) লাগবে । জমা দেওয়ার পরে n
পছন্দসই একটি পূর্ণসংখ্যার সিরিজের প্রথম এন্ট্রি আউটপুট দেয় বা ফিরে আসবে । (দ্রষ্টব্য যে এই পূর্ণসংখ্যার সিরিজটি অবশ্যই নির্ভর করে না n
)। ইনপুট এবং আউটপুট পদ্ধতি পুনরাবৃত্ত এবং অ-পুনরাবৃত্ত পদ্ধতির মধ্যে পৃথক হতে পারে। পূর্ণসংখ্যা সিরিজটি হ'ল কমপক্ষে ৫ এর দৈর্ঘ্য সহ কোনও নির্বিচার সিরিজ হতে পারে সিরিজটি সঠিকভাবে ব্যাখ্যা করা উচিত।
আপনার জমা দেওয়ার ক্ষেত্রে স্বেচ্ছাচারিতার জন্য বড় n
কাজ করা উচিত নয়, তবে কমপক্ষে কাজ করা উচিত n=5
। অ-পুনরাবৃত্তির পদ্ধতির অবশ্যই কমপক্ষে n
পুনরাবৃত্ত পদ্ধতির মতো কাজ করতে সক্ষম হতে হবে বা n=2^15-1
যেটি ছোট।
recursion
এই চ্যালেঞ্জের স্বার্থে, পুনরাবৃত্তিটি একটি ফাংশন (বা ফাংশন-মতো কনস্ট্রাক্ট) ব্যবহার করে কাঙ্ক্ষিত ক্রম তৈরি করে সংজ্ঞায়িত করা হয় যা নিজেকে কল করে (বা ফাংশনগুলির ক্রমকে কল করে যা নিজেকে কল করে শেষ করে; এতে ওয়াই সংযুক্তকারীটির মতো কনস্ট্রাক্ট অন্তর্ভুক্ত থাকে)। পুনরাবৃত্তির গভীরতা অনন্তের n
দিকে যেতে হবে । পুনরাবৃত্তিযোগ্য পদ্ধতির এমন কিছু যা পুনরাবৃত্তিযোগ্য নয় ।
n
তাত্ত্বিকভাবে সঠিক হলে তা নির্বিচারে বৃহত্তর জন্য কাজ করে , তবে সময় বা স্মৃতির সীমাবদ্ধতার কারণে এটি চালানো যায় না?
n=5
গণনা করতে হবে
xfor
কোনও ধরণের আমদানির মাধ্যমে পাওয়া যায়?) সম্ভবত এই ভাষাটি প্রতিযোগিতা করতে পারে না।
for
পিছনে পুনরাবৃত্তির দ্বারা সম্পন্ন হয়, তাfor
পুনরাবৃত্তি বা লুপ হয়?