Subfactorial বা rencontres সংখ্যার ( A000166 ) গৌণিক সংখ্যা যা একাধিক বিন্যাসন সংযুক্তকারিতা দেখা অনুরূপ সংখ্যার একটি ক্রম। বিশেষ করে এন ম subfactorial ! এন সংখ্যা দেয় derangements হয় একটি সেটের এন উপাদান। একটি হতাশ একটি হ'ল আদেশ যা কোনও উপাদান একই অবস্থানে থাকে না। সাবফ্যাক্টরিয়ালটি নিম্নলিখিত পুনরাবৃত্ত সম্পর্কের মাধ্যমে সংজ্ঞায়িত করা যেতে পারে:
!n = (n-1) (!(n-1) + !(n-2))
প্রকৃতপক্ষে, একই পুনরাবৃত্তি সম্পর্কটি ফ্যাক্টরিয়ালটির জন্য ধারণ করে তবে সাবফ্যাক্টরিয়ালটির জন্য আমরা শুরু করি:
!0 = 1
!1 = 0
(ফ্যাক্টরিয়ালটির জন্য আমাদের অবশ্যই অবশ্যই 1! = 1 ছিল ))
আপনার টাস্কটি গণনা করা ! এন , দেওয়া এন ।
বিধি
ফ্যাক্টরিয়াল মত, সাবফ্যাক্টরিয়াল খুব দ্রুত বৃদ্ধি পায়। যদি আপনার প্রোগ্রামটি শুধুমাত্র ইনপুট সব ব্যবস্থা করতে সক্ষম এটা জরিমানা এন যেমন যে ! এন আপনার ভাষা এর নেটিভ সংখ্যা টাইপ দ্বারা প্রতিনিধিত্ব করা যেতে পারে। যাইহোক, আপনার অ্যালগরিদম তত্ত্বীয়ভাবে স্বেচ্ছাচারী n এর জন্য কাজ করতে হবে । এর অর্থ, আপনি ধরে নিতে পারেন যে অবিচ্ছেদ্য ফলাফল এবং মধ্যবর্তী মানটি ঠিক আপনার ভাষা দ্বারা উপস্থাপিত হতে পারে। দ্রষ্টব্য যে এটি স্থির ই বাদ দেয় না যদি এটি সঞ্চিত থাকে বা সীমাবদ্ধ নির্ভুলতার সাথে গণনা করা হয়।
ফলাফলটি একটি সঠিক পূর্ণসংখ্যার হতে হবে (বিশেষত, আপনি বৈজ্ঞানিক স্বরলিপি দিয়ে ফলাফলটি অনুমান করতে পারবেন না)।
আপনি কোনও প্রোগ্রাম বা একটি ফাংশন লিখতে পারেন এবং ইনপুট গ্রহণ এবং আউটপুট সরবরাহের মানক পদ্ধতির কোনও ব্যবহার করতে পারেন ।
আপনি যে কোনও প্রোগ্রামিং ভাষা ব্যবহার করতে পারেন , তবে লক্ষ্য করুন যে এই ফাঁকগুলি ডিফল্টরূপে নিষিদ্ধ করা হয়েছে।
এটি কোড-গল্ফ , তাই সংক্ষিপ্ততম বৈধ উত্তর - বাইটগুলিতে মাপা - জয় w
পরীক্ষার মামলা
n !n
0 1
1 0
2 1
3 2
4 9
5 44
6 265
10 1334961
12 176214841
13 2290792932
14 32071101049
20 895014631192902121
21 18795307255050944540
100 34332795984163804765195977526776142032365783805375784983543400282685180793327632432791396429850988990237345920155783984828001486412574060553756854137069878601