আপনি মন পড়তে পারেন নামক অধ্যাপক দেবদাসের একটি এমআইটি বক্তৃতা থেকে এই কাজটি নেওয়া হয়েছে । কৌশলটির একটি বিশদ ব্যাখ্যা লিঙ্কযুক্ত ভিডিওতে বা এই দস্তাবেজে পাওয়া যাবে । আমি এটিকে সহজ ভাষায় ব্যাখ্যা করার চেষ্টা করব।
দেখা যাচ্ছে এটি 1930 এর দশকে উদ্ভাবিত হয়েছিল এবং এটি "ফিচ চেনিয়ের পাঁচ কার্ডের কৌশল" নামে পরিচিত ।
কৌশলটি এরকম হয়:
- কার্ডের একটি ডেকে থেকে পাঁচটি এলোমেলো কার্ড নির্বাচন করা হয়। শ্রোতা এবং আপনার সহকারী সেগুলি দেখতে পান তবে আপনি তা পান না।
- আপনার সহকারী (যার সাথে আপনি অনুশীলন করেছেন) সেই কার্ডগুলির মধ্যে চারটি নির্বাচন করবেন এবং একটি নির্দিষ্ট ক্রমে আপনাকে তা প্রদর্শন করবেন। নোট করুন যে লুকানো কার্ডটি এলোমেলোভাবে 5 টি কার্ড থেকে নেওয়া হয়নি। সহকারী একটি / কার্ড বাছায় যা কৌশলটিকে কাজ করবে।
- পঞ্চম কার্ডটি কী চারটি কার্ড থেকে সংগ্রহ করতে পারবেন সেই তথ্যের ভিত্তিতে আপনি কেটে নেবেন।
কিভাবে?
নিম্নলিখিত দুটি বিষয় মাথায় রাখুন:
৫ টি এলোমেলো কার্ড বাছাই করার সময়, আপনি গ্যারান্টিযুক্ত যে কমপক্ষে দুটি কার্ডের ক্ষেত্রে একই মামলা 1 রয়েছে ।
নীচের চিত্রটি সমস্ত র্যাঙ্ক 2 সহ একটি বৃত্ত দেখায় । যেহেতু এটি একটি বৃত্ত, তাই এটি গণনা করা সম্ভব: জে, কিউ, কে, এ, ২, ৩ (অর্থাত্ মডুলার গণনা)। আপনি গ্যারান্টিযুক্ত যে গোপন কার্ডটি প্রথমের মতো একই র্যাঙ্কের না থাকে, যেহেতু তারা একই মামলাতে থাকবে (নীচে বর্ণিত)। সর্বদা প্রথম কার্ড এবং লুকানো কার্ডগুলি চয়ন করা সবসময়ই সম্ভব যে লুকানো কার্ডটি প্রথমের চেয়ে 1 থেকে 6 রকের বেশি (চেনাশোনাগুলিতে গণনা করার সময়)। প্রথম কার্ডটি যদি 1 হয় তবে লুকানো কার্ডটি 2,3,4,5,6 বা 7 হবে । প্রথম কার্ডটি যদি জ হয় , তবে লুকানো কার্ডটি Q, K, A, 2,3 বা 4 এবং আরও কিছু হবে।
অ্যালগরিদম:
প্রথম কার্ড: এই কার্ডটিতে লুকানো কার্ডের মতো স্যুট থাকবে। কার্ডটি সেই রেফারেন্স পয়েন্ট হবে যা আপনি যখন লুকানো কার্ডের র্যাঙ্কটি নির্ধারণ করবেন তখন ব্যবহার করবেন।
২ য়, তৃতীয় এবং চতুর্থ কার্ডগুলি সমষ্টিগত পরিসীমা 1 ... 6 এ একটি মান ডিকোড করে । আমরা তিনটি কার্ড এস, এম, এল (ক্ষুদ্রতম কার্ড, মিডল কার্ড, বৃহত্তম কার্ড) কল করব। মানগুলি এর মতো এনকোড করা হবে (অভিধানে ক্রম):
S M L -> 1
S L M -> 2
M S L -> 3
M L S -> 4
L S M -> 5
L M S -> 6
সুতরাং, যদি প্রথম কার্ডের র্যাঙ্কটি 5 হয় এবং বাকি তিনটি কার্ডের 4 টি কিউ 7 থাকে (তাদের এসএলএম অর্ডার করা হয় ), তবে শেষ কার্ডটিতে র্যাঙ্ক 5 + 2 = 7 রয়েছে । আপনি যদি চয়ন করতে পারেন যে টেকসই এটি সুসংগত যতক্ষণ না সর্বোচ্চ বা সর্বনিম্ন কার্ড হওয়া উচিত।
যদি বেশ কয়েকটি কার্ড র্যাঙ্ক ভাগ করে, তবে মামলাটি অর্ডার নির্ধারণ করবে, যেখানে সি <ডি <এইচ <এস ।
ছক পূরণ করা:
চারটি কার্ড এইচ 3 (হৃদয়ের তিনটি), ডি কে (হীরকের রাজা) এবং আরও কিছু হিসাবে দেওয়া হবে। আপনি পরিবর্তে 3H এবং কেডি হিসাবে অন্যভাবে ইনপুট নেওয়া বেছে নিতে পারেন ।
ইনপুটটি যে কোনও সুবিধাজনক বিন্যাসে থাকতে পারে তবে আপনি একটি ভেরিয়েবলের স্যুটগুলির তালিকা এবং অন্যটিতে র্যাঙ্কের তালিকা একত্রিত করতে পারবেন না। 'D5', 'H3' ..
এবং [['D',5],['H',3] ...
উভয় ঠিক আছে, কিন্তু 'DHCH',[5,3,1,5]
না। আপনি টি বাদে অক্ষরের পরিবর্তে সংখ্যা ব্যবহার করতে পারবেন না ।
আউটপুট
লুকানো কার্ড, ইনপুট হিসাবে একই বিন্যাসে।
উদাহরণ
আসুন একটি ওয়াকথ্রু করি:
Input:
D3 S6 H3 H9
আমরা জানি যে লুকানো কার্ডটি হীরা, কারণ প্রথম কার্ডটি হীরা। আমরা এও জানি যে র্যাঙ্ক হয় 4,5,6,7,8 বা 9 যেহেতু প্রথম কার্ডের র্যাঙ্ক হয় 3 ।
অবশিষ্ট কার্ডগুলি 6,3,9 ==> এম, এস, এল এর অর্ডার করা হয় যা মান 3 কে এনকোড করে । লুকানো কার্ডটি হীরার 3 + 3 = 6 , সুতরাং আউটপুটটি D6 হওয়া উচিত ।
পরীক্ষার কেস:
C3 H6 C6 S2
C9 # The order is LMS (H6 > C6, and 2 < 6). 3+6=9
SQ S4 S3 ST # (ST = S10. Format is optional)
S2 # The order is MSL. 12+3=2
HA CA DA SA
H2 # The order is SML. 14+1=2
এটি কোড-গল্ফ , তাই প্রতিটি ভাষার সংক্ষিপ্ততম সমাধানটি জয়ী হয়। ব্যাখ্যা উত্সাহিত হয়!
1 এখানে চারটি স্যুট রয়েছে ( সি লাবস, ডি আইমন্ডস, এইচ আর্টস এবং এস পেডস)।
2 13 টি পদ রয়েছে, 2,3,4,5,6,7,8,9,10, জে, কিউ, কে, এ । আপনি 10 এর পরিবর্তে টি ব্যবহার করতে বেছে নিতে পারেন ।
92427**3
এবং সংশোধনk+7
করার জন্যk+8
: 1 বাইট সংরক্ষণ করতেa=>(k='A23456789TJQK'+92427**3)[[[r,s],...x]=a.map((c,i)=>[k.search(c[0])+10,c[1],i]),(r-k[x.sort().map(c=>k=k*2|c[2])|k+8])%13]+s