সমস্যা
আসুন জেনারালাইজড ক্যান্টর সেটটি সংজ্ঞায়িত করি পুনরাবৃত্তভাবে সমস্ত অন্তরগুলির মধ্য থেকে কিছু যৌক্তিক দৈর্ঘ্যের অংশগুলি মুছে ফেলা হয়েছে যা এখনও মুছে ফেলা হয়নি, একক ধারাবাহিক বিরতি থেকে শুরু করে।
মুছে ফেলার জন্য সেগমেন্টের আপেক্ষিক দৈর্ঘ্য দেওয়া এবং না করা পুনরাবৃত্তির সংখ্যা, কোনও প্রোগ্রাম বা ফাংশন লিখতে সমস্যা হ'ল যা n
পুনরাবৃত্তির পরে মুছে ফেলা বা না মুছে ফেলা সেগুলির তুলনামূলক দৈর্ঘ্যকে ছাড়িয়ে যায়।
উদাহরণ: Iteratively চতুর্থ এবং ষষ্ঠ অষ্টম মুছুন
ইনপুট:
n
- 0 বা 1 থেকে সূচিকৃত পুনরাবৃত্তির সংখ্যা
l
- ধনাত্মক পূর্ণসংখ্যার সাথে ভাগের দৈর্ঘ্যের তালিকা gcd(l)=1
মুছে ফেলা হয় না এমন একটি বিভাগ থেকে শুরু করে অংশগুলির আপেক্ষিক দৈর্ঘ্যের প্রতিনিধিত্ব করে এমন অংশগুলির আপেক্ষিক দৈর্ঘ্যের প্রতিনিধিত্ব করে এবং বিজোড় দৈর্ঘ্যের । যেহেতু তালিকার দৈর্ঘ্য বিজোড়, প্রথম এবং শেষ বিভাগগুলি কখনই মোছা হয় না। উদাহরণস্বরূপ, নিয়মিত ক্যান্টর সেটের জন্য এটি এক তৃতীয়াংশের জন্য [1,1,1] হবে, এক তৃতীয়াংশ মুছে যায় এবং আবার তৃতীয়াংশ থাকে না।
আউটপুট:
পূর্ণসংখ্যা তালিকা o
, gcd(o)=1
, আপেক্ষিক সেগমেন্ট লেন্থ এর n
ম পুনরাবৃত্তির যখন অংশ যে আগের পুনরাবৃত্তির মোছা হয়নি তালিকার একটি নিচে ছোটো কপি দ্বারা প্রতিস্থাপিত হয় l
। প্রথম পুনরাবৃত্তিটি ঠিক [1]
। আপনি যেকোন দ্ব্যর্থহীন আউটপুট পদ্ধতি এমনকি অবিচ্ছিন্ন ব্যবহার করতে পারেন ।
উদাহরণ
n=0, l=[3,1,1,1,2] → [1]
n=1, l=[3,1,1,1,2] → [3, 1, 1, 1, 2]
n=2, l=[3,1,1,1,2] → [9,3,3,3,6,8,3,1,1,1,2,8,6,2,2,2,4]
n=3, l=[5,2,3] → [125,50,75,100,75,30,45,200,75,30,45,60,45,18,27]
n=3, l=[1,1,1] → [1,1,1,3,1,1,1,9,1,1,1,3,1,1,1]
আপনি ইনপুটটি বৈধ বলে ধরে নিতে পারেন। এটি কোড-গল্ফ , তাই বাইট জিততে সংক্ষিপ্ততম প্রোগ্রাম।
[0, 1, 2, 4, 6, 7]
পরিবর্তে[3, 1, 1, 1, 2]
?