প্রথমে একটি লিস্ট তৈরি করা হয়। ইনডেক্স ০ থেকে শুরু হয় এবং প্রথম তৃতীয় উপাদানের পজিশন ২। লিস্ট খালি না হওয়া পর্যন্ত ট্রাভার্স করতে হবে এবং প্রতিবার পরবর্তী তৃতীয় উপাদানের ইনডেক্স বের করে মান প্রিন্ট করতে হবে এবং লিস্টের দৈর্ঘ্য কমাতে হবে।
উদাহরণ
A: [10,20,30,40] আউটপুট: 30 20 40 10
ব্যাখ্যা
প্রথম তৃতীয় উপাদান ৩০, তারপর ৪০ থেকে গণনা করলে পরবর্তী তৃতীয় উপাদান ২০, আবার ৪০ থেকে গণনা করলে পরবর্তী তৃতীয় উপাদান ৪০ নিজে এবং শেষে ১০ প্রিন্ট হয়।
অ্যালগরিদম
ধাপ ১: লিস্টের ইনডেক্স ০ থেকে শুরু হয় এবং প্রথম তৃতীয় উপাদান পজিশন ২-তে থাকে।
ভেরিয়েবল p=2, শুরুর ইনডেক্স id=0।
ধাপ ২: লিস্টের দৈর্ঘ্য বের করুন।
listlen = len(LST) // লিস্টের দৈর্ঘ্য (LST)
ধাপ ৩: লিস্ট খালি না হওয়া পর্যন্ত ট্রাভার্স করুন এবং প্রতিবার পরবর্তী তৃতীয় উপাদানের ইনডেক্স বের করুন।
While(listlen > 0)
Id = (p + id) % listlen
A = LST.pop(id) // প্রয়োজনীয় উপাদান সরিয়ে প্রিন্ট
Listlen -= 1
End while
উদাহরণ কোড
# লিস্ট খালি না হওয়া পর্যন্ত প্রতি তৃতীয় উপাদান সরিয়ে ফেলা
def removenumber(no):
# লিস্ট ০ ইনডেক্স থেকে শুরু
p = 3 - 1
id = 0
lenoflist = (len(no))
# লিস্ট খালি হওয়া পর্যন্ত লুপ
while lenoflist > 0:
id = (p + id) % lenoflist
# প্রয়োজনীয় উপাদান সরিয়ে প্রিন্ট
print(no.pop(id))
lenoflist -= 1
# ড্রাইভার কোড
A = list()
n = int(input("অ্যারের আকার ::"))
print("পূর্ণসংখ্যা দিন")
for i in range(int(n)):
p = int(input("n="))
A.append(int(p))
print("তৃতীয় উপাদান সরিয়ে ফেলার পর লিস্টটি")
removenumber(A) # ফাংশন কল
আউটপুট
অ্যারের আকার ::9 সংখ্যা n=10 n=20 n=30 n=40 n=50 n=60 n=70 n=80 n=90 তৃতীয় উপাদান সরিয়ে ফেলার পর লিস্টটি 30 60 90 40 80 50 20 70 10