এই প্রশ্নটি কেবল কোড-পর্যালোচনার দিকে ঝুঁকেছে এবং আমি বুঝতে পেরেছি যে এটি আপনার পছন্দ হতে পারে একটি কোডগল্ফ চ্যালেঞ্জ হিসাবে অভিযোজিত:
আপনাকে বুলিয়ান হিসাবে প্রতিনিধিত্ব করে এমন x ঘরগুলির একটি খালি খালি তালিকা দেওয়া হবে। প্রতিদিন, ঘরগুলি সংলগ্নগুলির সাথে প্রতিযোগিতা করে। 1 একটি "সক্রিয়" ঘর এবং 0 টি "নিষ্ক্রিয়" ঘর উপস্থাপন করে। যদি প্রদত্ত বাড়ির উভয় পাশের প্রতিবেশীরা হয় উভয়ই সক্রিয় হয় বা উভয়ই নিষ্ক্রিয় থাকে, তবে পরের দিন সেই বাড়িটি নিষ্ক্রিয় হয়ে যায়। অন্যথায় এটি সক্রিয় হয়ে ওঠে।
def get_state_as_pos(thelist, pos):
if thelist[pos-1] == thelist[pos+1]:
return 0
else:
return 1
উদাহরণস্বরূপ, যদি আমাদের প্রতিবেশী [0, 1, 0] এর একটি গ্রুপ থাকে তবে [1] এ বাড়িটি 0 হয়ে যাবে কারণ ঘরটি তার বাম এবং ডান উভয়ই নিষ্ক্রিয়। উভয় প্রান্তের ঘরগুলি বিপরীত length-1
দিকটিও পরীক্ষা করে, তাই 0 সূচিতে প্রতিবেশীরা সূচক এবং সূচক 1 এবং তদ্বিপরীত। এমনকি কক্ষটি আপডেট করার পরেও আপনাকে অন্যের আপডেট করার সময় এর পূর্বের অবস্থাটি বিবেচনা করতে হবে যাতে প্রতিটি কক্ষের রাষ্ট্রীয় তথ্য একই সাথে আপডেট হয়।
ফাংশনটি রাজ্যগুলির অ্যারে এবং বিভিন্ন পদক্ষেপ নেয় এবং প্রদত্ত সংখ্যক পদক্ষেপের পরে বাড়ির রাজ্য আউটপুট করা উচিত।
input: states = [1, 0, 0, 0, 0, 1, 0, 0], steps = 1
output should be [0, 1, 0, 0, 1, 0, 1, 1]
input: states = [1, 1, 1, 0, 1, 1, 1, 1], steps = 2
intermediate state= [0, 0, 1, 0, 1, 0, 0, 0]
output should be [0, 1, 0, 0, 0, 1, 0, 0]
input: states = [1], steps=1
output: states= [0]
আপনার পছন্দের তালিকাটি এবং পদক্ষেপগুলি নিন এবং ফলাফলটিকে ডিফল্ট I / O এর মাধ্যমে আউটপুট দিন । স্ট্যান্ডার্ড লুফোলগুলি নিষিদ্ধ। এটি কোডগল্ফ, বাইট জেতে সংক্ষিপ্ত উত্তর!
[0, 1, 0, 0, 1, 0, 1, 1]
?