Module: عمليات البت (بايثون)


Problem

13 /13


مدرس الرياضيات يوري بتروفيتش

Problem

ابتكر مدرس الرياضيات الأسطوري يوري بتروفيتش لعبة مضحكة تحتوي على أرقام. وبالتحديد ، أخذ عددًا صحيحًا تعسفيًا ، فإنه يترجمه إلى نظام رقم ثنائي ، والحصول على سلسلة من الأصفار والآحاد ، بدءًا من واحد. (على سبيل المثال ، الرقم العشري \ (19_ {10} = 1 \ cdot2 ^ 4 + 0 \ cdot2 ^ 3 + 0 \ cdot2 ^ 2 + 1 \ cdot2 ^ 1 + 1 \ cdot2 ^ 0 \) & nbsp؛ & nbsp؛ في النظام الثنائي ستتم كتابته كـ 10011 2 .) ثم يبدأ المعلم في إزاحة أرقام الرقم الثنائي الناتج في دورة (بحيث يصبح الرقم الأخير هو الأول ، ويتم إزاحة جميع الأرقام الأخرى موضعًا واحدًا إلى اليمين) ، والكتابة خارج التسلسل الناتج من الأصفار والآحاد في العمود و [مدش] ؛ لاحظ أنه بغض النظر عن اختيار الرقم الأولي ، تبدأ التسلسلات الناتجة في التكرار من لحظة معينة. وأخيرًا ، وجد يوري بتروفيتش الحد الأقصى من الأرقام المكتوبة ثم ترجمها مرة أخرى إلى نظام الأعداد العشرية ، معتبراً أن هذا الرقم هو نتيجة التلاعبات التي تم إجراؤها. إذن ، بالنسبة للرقم 19 ، ستكون قائمة التسلسلات:
10011
11001
11100
01110
00111
10011
& hellip؛
وبالتالي ستكون نتيجة اللعبة رقمًا \ (1 \ cdot2 ^ 4 + 1 \ cdot2 ^ 3 + 1 \ cdot2 ^ 2 + 0 \ cdot2 ^ 1 + 0 \ cdot2 ^ 0 = 28_ {10} \)

نظرًا لأن اللعبة المخترعة بالأرقام تأخذ المزيد والمزيد من خيال المعلم ، وبالتالي تشتت انتباهه عن العمل مع تلاميذ المدارس الموهوبين جدًا ، يُطلب منك كتابة برنامج من شأنه أن يساعد Yuri Petrovich في الحصول على نتيجة اللعبة دون حسابات يدوية مملة.
نبسب ؛
الإدخال:
يحتوي ملف الإدخال على عدد صحيح واحد & nbsp؛ N & nbsp؛ (0 & lt؛ = N & lt؛ = 32767).
الإخراج: & nbsp؛
يجب أن يطبع برنامجك إلى ملف الإخراج عددًا صحيحًا واحدًا يساوي نتيجة اللعبة.

أمثلة <الجسم>
# إدخال الإخراج
1 1 1