Processing math: 100%

المپدیا

دانش‌نامه‌ی المپیاد کامپیوتر ایران

ابزار کاربر

ابزار سایت


سوالات المپیاد:دوره ی تابستان:دوره ی ۱۷:عملی:سوال ۱

اعداد متنفّر

به دو عدد ‎a‎ و ‎b ‎ از هم متنفر‎ گویند اگر عدد صحیح و مثبت ‎k‎ وجود داشته باشد به طوری که ‎a×2k=b‎. شما باید برنامه‌ای بنویسید که از بین ‎n‎ عدد صحیح و مثبتِ داده شده، تعدادی از آن‌ها را انتخاب کند به طوری که

  • اوّلاً هیچ دو عدد انتخاب شده‌ای، از هم متنفر نباشند؛
  • ثانیاً، حاصل جمع اعداد انتخاب شده، بیشینه باشد.

ورودی

  • در سطر اول ورودی، عدد ‎n‎ نوشته شده‌ است.
  • در ‎n‎ سطر بعدی، در هر سطر یک عدد صحیح مثبت نوشته شده است.
  • شما باید از بین این ‎n‎ عدد، تعدادی را انتخاب کنید به طوری که شرایط گفته شده برقرار شوند.
  • 1n5000
  • تمامی اعداد ورودی، صحیح و مثبت بوده و در تایپ ‎int‎ جا می‌شوند.

خروجی

  • در سطر اوّل خروجی تعداد اعداد انتخاب شده (مثلاً ‎x‎) را بنویسید.
  • در ‎x‎ سطر بعد، اعداد انتخاب شده را به‌ترتیب صعودی چاپ کنید به طوری که در هر سطر دقیقاً یکی از اعداد انتخاب شده نوشته شده باشد.

محدودیت‌ها

  • محدودیت زمان: ۱ ثانیه
  • محدودیت حافظه: ۲۵۶ مگابایت

ورودی و خروجی نمونه

ورودی نمونه خروجی نمونه
4
1
2
3
4
2
3
4

ابزار صفحه