কাজটি
সংজ্ঞা
Points 1,2,3,4,5 points পয়েন্টগুলি এবং তাদের সমস্ত অনুমতি বিবেচনা করুন। আমরা একটি সাধারণ কৌতুক দ্বারা এই 5 পয়েন্টের সম্ভাব্য অনুমতিগুলির মোট সংখ্যা খুঁজে পেতে পারি: এই পয়েন্টগুলি সহ 5 টি স্লট পূরণ করার চিত্র, প্রথম স্লটে 5 টি সম্ভাব্য সংখ্যা থাকবে, দ্বিতীয় 4 হবে (যেহেতু প্রথম স্লটটি পূরণ করতে ব্যবহৃত হয়েছে) তৃতীয় 3 এবং তাই। সুতরাং মোট অনুমানের সংখ্যা 5 * 4 * 3 * 2 * 1; এই 5 হবে! ক্রিয়াকলাপ বা 120 অনুমান। আমরা এটিকে প্রতিসামগ্রী গ্রুপ এস 5 হিসাবে ভাবতে পারি এবং তারপরে সিমমেট্রিক গ্রুপ সানকে অনুমতি দেওয়া হবে n! or (n*n-1*n-2...*1)
।
একটি "এমনকি" অনুক্রমটি এমন এক যেখানে সমান দৈর্ঘ্যের চক্র রয়েছে। এটি বোঝা যখন আবর্তনশীল স্বরলিপি লেখা উদাহরণস্বরূপ, সবচেয়ে সহজ পদ্ধিতি হল (1 2 3)(4 5)
permutes 1->2->3->1
এবং 4->5->4
এবং এক 3 দৈর্ঘ্য চক্র রয়েছে (1 2 3)
এবং এক 2 দৈর্ঘ্য চক্র (4 5)
। বিজড়িত হিসাবে শ্রেণিভুক্তকরণ বা এমনকি আমরা বিজোড় দৈর্ঘ্যের চক্রকে উপেক্ষা করি এবং বলি যে এই পাঠ্যক্রমটি [ (1 2 3)(4 5)
] বিজোড় কারণ এটি দৈর্ঘ্যের চক্রের একটি বিজোড় সংখ্যা {1। রয়েছে। এমনকি উদাহরণ:
(1)(2 3)(4 5)
= দুটি 2 দৈর্ঘ্যের চক্র | ইভেন |(1 2 3 4 5)
= এমনকি দৈর্ঘ্যের চক্র নেই ইভেন | * নোট করুন যে কোনও দৈর্ঘ্যের চক্র যদি উপস্থিত না থাকে তবে আদেশটি সমান হয়।
অদ্ভুত উদাহরণ:
(1 2)(3 4 5)
= এক 2 দৈর্ঘ্যের চক্র | ওডিডি |(1)(2 3 4 5)
= এক 4 দৈর্ঘ্যের চক্র | ওডিডি |
যেকোন সিমমেট্রিক গ্রুপের অর্ধেকের অর্ধেকই আমরা এমনকি সম-গোষ্ঠীকে বিকল্প গ্রুপ এন বলতে পারি, সুতরাং এস 5 = 120 এ 5 = 60 অনুক্রম হিসাবে।
স্বরলিপি
অনুক্রমের জন্য, কমপক্ষে, চক্রীয় স্বরলিপিতে লেখা উচিত যেখানে প্রতিটি চক্রটি পৃথক প্রথম বন্ধনে থাকে এবং প্রতিটি চক্র আরোহী ক্রমে চলে। উদাহরণস্বরূপ (1 2 3 4 5)
না (3 4 5 1 2)
। এবং একটি একক সংখ্যা সহ চক্রের জন্য যেমন: (1)(2 3 4)(5)
একক / স্থির পয়েন্টগুলি অর্থ বাদ দেওয়া যায় (1)(2 3 4)(5) = (2 3 4)
। তবে পরিচয় {যে বিন্দুতে সমস্ত পয়েন্ট স্থির থাকে - কেবল এটি উপস্থাপন করার জন্য (1)(2)(3)(4)(5)
লিখতে ()
হবে।
চ্যালেঞ্জ
আমি আপনাকে, কম কোডে, কোনও ইনপুট {1,2,3,4 ...} হিসাবে কোনও ধনাত্মক পূর্ণসংখ্যার গ্রহণ করতে এবং বিকল্প গ্রুপ এ এর সমস্ত অনুমতি প্রদর্শন করতে চাই যেখানে এন ইনপুট / সমস্ত সমান এসএন এর অনুমোদন। উদাহরণ স্বরূপ:
Input = 3
()
(1 2 3)
(1 3 2)
এবং
Input = 4
()
(1 2)(3 4)
(1 3)(2 4)
(1 4)(2 3)
(1 2 3)
(1 3 2)
(1 2 4)
(1 4 2)
(1 3 4)
(1 4 3)
(2 3 4)
(2 4 3)
এবং উদাহরণগুলির সাথে আমিও চাই যে এক দৈর্ঘ্যের সমস্ত চক্রকে আলাদা করে দেওয়া হোক এবং পরিচয়টি যেমন: কিছুই
()
না হয় - কেবল বন্ধনীরাই নয় আপনি যা কিছু ব্যবহার করতে যাচ্ছেন বিভিন্ন বিধিবিধান দেখানোর id
জন্য acceptable বা গ্রহণযোগ্য।
অতিরিক্ত পড়া
আপনি এখানে আরও তথ্য পেতে পারেন:
ভাল লুক
এবং এটি কোডগল্ফ হিসাবে যে কেউ সংক্ষিপ্ততম বাইট জিততে অল্টারনেটিং গ্রুপ অ্যানের অনুমতিগুলি মুদ্রণ করতে পারে।
(2 3 1 4)
আরোহণের ক্রমে কীভাবে রাখব ? আপনার অর্থ কি আমাদের সামান্যতম উপাদানটি সামনে রাখা উচিত?
(2 3 1 4)
করে 2->3->1->4->2
এটা লেখা যেতে পারে (1 4 2 3)
তার ক্ষুদ্রতম উপাদান প্রথম
[[1, 2], [3, 4]]
পরিবর্তে উদাহরণস্বরূপ আউটপুট অনুমতি দেওয়া হয়(1 2)(3 4)
?