আমি কীভাবে কোনও সম্ভাবনার দ্রুত এবং নির্ভুলভাবে গণনা করতে পারি তার জন্য আগে একটি প্রশ্ন জিজ্ঞাসা করেছি । তবে, সম্ভবত একটি বন্ধ ফর্ম সমাধান দেওয়া হওয়ায় এটি খুব সহজ ছিল! এখানে একটি আরও কঠিন সংস্করণ।
এই টাস্কটি সম্ভাব্যতার সঠিক এবং দ্রুত গণনা করার জন্য কোড লেখার বিষয়ে । আউটপুটটি তার সর্বাধিক হ্রাসকৃত আকারে ভগ্নাংশ হিসাবে লিখিত একটি সুনির্দিষ্ট সম্ভাবনা হওয়া উচিত। এটি কখনও কখনও আউটপুট করা উচিত 4/8
নয় 1/2
।
কিছু ধনাত্মক পূর্ণসংখ্যার জন্য n
, 1s এবং -1s দৈর্ঘ্যের একরকম এলোমেলো স্ট্রিং বিবেচনা করুন n
এবং এটিকে এ কল করুন A
itself এটি A[1] = A[n+1]
যদি 1 থেকে সূচীকরণ করা A[2] = A[n+2]
ইত্যাদি। A
এখন দৈর্ঘ্য আছে 2n
। এখন দৈর্ঘ্যের দ্বিতীয় এলোমেলো স্ট্রিং বিবেচনা করুন n
যার n
সম্ভাব্যতা 1 / 4,1 / 2, 1/4 সহ প্রথম মান -1, 0, বা 1 হয় এবং এটিকে বি কল করুন call
এখন ভেতরের পণ্য বিবেচনা B
সঙ্গে A[1+j,...,n+j]
ভিন্ন j =0,1,2,...
।
উদাহরণস্বরূপ, বিবেচনা করুন n=3
। সম্ভাব্য মান A
এবং B
হতে পারে A = [-1,1,1,-1,...]
এবং B=[0,1,-1]
। এই ক্ষেত্রে প্রথম দুটি অভ্যন্তরীণ পণ্য হ'ল 0
এবং 2
।
কার্য
প্রত্যেকের জন্য j
, দিয়ে শুরু j=1
আপনার কোড আউটপুট সম্ভাব্যতা উচিত প্রথম যে j+1
ভেতরের পণ্য যে জন্য শূন্য n=j,...,50
।
মার্টিন বাটনার দ্বারা উত্পাদিত টেবিলটি অনুলিপি করার জন্য j=1
আমাদের নিম্নলিখিত নমুনার ফলাফল রয়েছে।
n P(n)
1 1/2
2 3/8
3 7/32
4 89/512
5 269/2048
6 903/8192
7 3035/32768
8 169801/2097152
স্কোর
আপনার স্কোরটি সবচেয়ে বড় j
আপনার কোডটি আমার কম্পিউটারে 1 মিনিটের মধ্যে শেষ হয়। কিছুটা স্পষ্ট করার জন্য, প্রতিটি j
এক মিনিট পায়। নোট করুন যে পূর্ববর্তী লিঙ্কযুক্ত প্রশ্নের ডায়নামিক প্রোগ্রামিং কোড এটি এর জন্য সহজেই করবে j=1
।
টাইব্রেকার
যদি দুটি এন্ট্রি একই j
স্কোর পায় তবে বিজয়ী এন্ট্রি তার n
জন্য আমার মেশিনে এক মিনিটের মধ্যে সবচেয়ে বেশি হবে j
। যদি দুটি সেরা এন্ট্রিও এই মানদণ্ডে সমান হয় তবে বিজয়ীর উত্তর আগে জমা দেওয়া হবে।
ভাষা ও গ্রন্থাগার
আপনি যে কোনও অবাধে উপলভ্য ভাষা এবং লাইব্রেরি ব্যবহার করতে পারেন। আমি অবশ্যই আপনার কোডটি চালাতে সক্ষম হব তাই দয়া করে আপনার কোড লিনাক্সে কীভাবে চালানো / সংকলন করা যায় তার সম্পূর্ণ ব্যাখ্যা অন্তর্ভুক্ত করুন যদি সম্ভব হয় তবে।
আমার মেশিনের সময়গুলি আমার মেশিনে চালিত হবে। এটি একটি এএমডি এফএক্স-8350 এইট-কোর প্রসেসরে একটি স্ট্যান্ডার্ড উবুন্টু ইনস্টল। এর অর্থ হল আপনার কোডটি চালাতে আমার সক্ষম হওয়া দরকার।
বিজয়ী এন্ট্রি
j=2
মধ্যে পাইথন মিচ শোয়ার্জ দ্বারা।j=2
মধ্যে পাইথন feersum দ্বারা। বর্তমানে দ্রুততম এন্ট্রি।