এখানে সমস্ত 2x2 বাইনারি ম্যাট্রিক রয়েছে
#0 #1 #2 #3 #4 #5 #6 #7 #8 #9 #10 #11 #12 #13 #14 #15
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
00 00 00 00 01 01 01 01 10 10 10 10 11 11 11 11
00 01 10 11 00 01 10 11 00 01 10 11 00 01 10 11
দুটি বাইনারি বর্গক্ষেত্র ম্যাট্রিক্স সম্পর্কের অধীনে সমতুল্য হয় ~
যদি একটি অনুভূমিক বা উল্লম্ব অক্ষের মধ্যে সংখ্যার প্রতিচ্ছবি দ্বারা অন্যটিতে ম্যাপ করা যায় ।
#1 ~ #2
উল্লম্ব অক্ষের মধ্যে প্রতিবিম্বের অধীনে যাতে আমাদের কেবল এটির একটি রাখা প্রয়োজন (এটি কোনও বিষয় নয়)। তেমনিভাবে #3 ~ #12
, #6 ~ #9
এবং অন্যান্য।
লক্ষ্যটি এমন একটি প্রোগ্রাম তৈরি করা হয় যা একটি একক ইনপুট নেয় N
এবং যতগুলি N x N
বাইনারি ম্যাট্রিকগুলি বিদ্যমান তার প্রিন্ট করে যে আউটপুটে সমস্ত ম্যাট্রিকগুলি উপরের সম্পর্কের অধীনে পৃথক।
হ্যান্ড-ওয়েভ সিউডোকোডে, একটি গ্রহণযোগ্য সমাধান হবে
define M[i] = N by N matrix with bit pattern equal to i
for i = 0 to (2^(N^2)) - 1
valid = true
for j = i+1 to (2^(N^2)) - 1
if (equivalent(M[i], M[j]))
valid = false
break
if (valid)
print (M[i])
ইনপুট জন্য N=2
একটি বৈধ আউটপুট হবে
00 00 00 01 10 01 11
00 01 11 01 01 11 11
কিন্তু একই সমতুল্য শ্রেণী থেকে বিভিন্ন ম্যাট্রিক নির্বাচন করে অন্য বৈধ আউটপুট হবে
00 10 11 11 11 10 01
00 00 00 10 11 10 10
ম্যাট্রিক্সের ক্রমটি কোনও ব্যাপার নয়, সমমানের ম্যাট্রিকগুলির থেকে বিশেষ পছন্দটি কোনও বিষয় নয়, এবং হোয়াইটস্পেসের কোনও ব্যাপার নেই, ম্যাট্রিকগুলি আউটপুট করুন তবে যতক্ষণ না এটি মানব-পাঠযোগ্য।
আউটপুট অবশ্যই অবসন্ন হতে হবে।
সংক্ষিপ্ততম কোড জিতেছে।
সম্পাদনা: এটি আমার প্রথম গল্ফ পোস্ট এবং আমি জয়ের মানদণ্ডে আমার মন পরিবর্তন করেছি।
একটি ভাষার সংক্ষিপ্ততা / গল্ফিং জয়ের জন্য বিশেষভাবে ডিজাইন করা হয়নি এমন সংক্ষিপ্ততম কোড ।
আমি আশা করি এই মানদণ্ডটি উত্তরোত্তর পরবর্তী সময়ে বদলাতে খারাপ শিষ্টাচার নয়, তবে আমি মনে করি এটি একটি "সাধারণ" ভাষায় করা আরও অনেক আকর্ষণীয় প্রস্তাব।