C. Шатрын хөлөг дээрх билльярд

хугацааны хязгаарлалт 2 секунд

санах ойн хязгаарлалт 256 мегабайт

оролт стандарт оролт

гаралт стандарт гаралт

Шатрын хүүгийн хэмжээтэй билльярдны шарик байжээ. Үүний хөдөлгөөн шатрын тэмээний нүүдэлтэй төстэй. Цор ганц ялгаа нь шарик хөлгийн хүрээг мөргөөд ойн, хөдөлгөөнөө үргэлжлүүлэх юм.

Өөрөөр хэлбэл эхлээд дөрвөн диагналийн чиглэлийн аль нэгийг сонгон тэр чиглэлээрээ хөдөлж эхлэнэ. Хэрэв шарик хөлгийн захын нүдэнд ирвэл ойх буюу 90 градусаар чиглэлээ өөрчлөн хөдөлгөөнөө үргэлжлүүлнэ. Харин булангийн нүдэнд ирвэл шарик хоёр удаа ойх буюу эсрэг чиглэлрүү явах болно. Шарик хичнээн ч удаа ойж болно. Шарик өмнө нь дайран өнгөрсөн нүдэн дээрээ дахин ирвэл хөдөлгөөн дуусна.

$a$ шарик $b$ шарикийн байгаа газар ирвэл $a$ шарик $b$ шарикийг мөргөсөн гэж үзнэ.

Чиний даалгавар бол хамгийн ихдээ хэдэн шарик хоорондоо мөргөлдөлгүйгээр $n × m$ хөлөг дээр байрлаж болохыг олох юм.

Оролт

Эхний мөрөнд $n$ ба $m$ ($2 ≤ n, m ≤ 10^{6}$) бүхэл тоонууд байна.

Гаралт

Хамгийн ихдээ хэдэн шарик нэгнийгээ мөргөлгүйгээр байрлаж болохыг хэвлэ.

C++ хэл дээр 64-битийн тоо хэрэглэх үед %lld-г хэрэглэхгүй байхыг зөвлөж байна. %I64d, эсвэл cin, cout стриймийг ашиглана уу.

Орчуулсан: Бат-Од

Жишээ тэстүүд

Оролт
3 4
Гаралт
2
Оролт
3 3
Гаралт
3
Сэтгэгдлүүдийг ачааллаж байна...