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

یک جدول \(n \times m\) داریم. این جدول شامل \(n\) سطر و \(m\) ستون است که به ترتیب از بالا به پایین از ۱ تا \(n\) و از چپ به راست از ۱ تا \(m\) شماره گذاری شده است. در هر خانه از این جدول یک لامپ خاموش قرار دارد.

در هر مرحله می‌توانیم یک خانه از این جدول را انتخاب کنیم و آن لامپ و همه لامپ‌های مجاور ضلعی آن را تغییر وضعیت بدهیم. دو خانه مجاورند اگر در یک ضلع مشترک باشند

از شما می‌خواهیم با انجام دادن حداکثر \(n \times m\) عملیات وضعیت همه لامپ‌ها را به روشن تبدیل کنید.

ورودی

در تنها سطر ورودی دو عدد صحیح و مثبت \(n\) و \(m\) که با فاصله از هم جدا شده‌اند آمده است. \[1 \leq n, m \leq 1000\]

تضمین می‌شود همواره راهی برای رسیدن به این هدف وجود دارد.

خروجی

در سطر اول خروجی عدد صحیح \(k\) را چاپ کنید که تعداد عملیات‌های مورد نیاز شما را نشان می‌دهد. \[0 \leq k \leq n \times m\] در \(k\) سطر بعدی، در سطر \(i\)ام، دو عدد صحیح و مثبت \(r_i\) و \(c_i\) را که با یک فاصله از هم جدا شده‌اند چاپ کنید که به ترتیب نشان‌دهنده‌ی سطر و ستون لامپی است که روی آن عملیات انجام داده‌اید.

\[1 \leq r_i \leq n\] \[1 \leq c_i \leq m\]

مثال

ورودی نمونه ۱

1 2

خروجی نمونه ۱

1
1 1

با همین یک عملیات هر دو لامپ روشن می‌شوند چون هر دو خاموش هستند.

ورودی نمونه ۲

2 2

خروجی نمونه ۲

4
1 1
1 2
2 1
2 2

اگر روی هر لامپ یک عملیات انجام دهیم هر لامپ سه بار تغییر وضعیت می‌دهد پس در نهایت همه لامپ‌ها روشن می‌شوند.

ارسال پاسخ برای این سؤال
فایلی انتخاب نشده است.