아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

マラソンを観よう

시간 제한8초메모리 제한1024 MB

요약
정수점 (a, b)가 주어질 때, 원점과 (a, b)를 잇는 선분 위에 있지 않으면서 그 선분에 가장 가까운 정수점을 찾고, 동률이면 x가 작은 것, 그다음 y가 작은 것을 구한다.
난이도

보통10점 중 5점

유형
수학, 기하, 정수론, 구현
정답자
아직 제출이 없습니다

문제

陸上競技ファンのあなたは,とあるマラソンの大会を現地で観戦することにした.この大会では,XY 平面上の原点と点 (a, b) を結ぶ線分上がマラソンコースとなる.また,大会中の交通規制のため,大会の観戦は,X 座標と Y 座標がともに整数である点のうち,マラソンコース上にない点のみで行うことができる.

あなたは,もちろん,できるだけマラソンコースに近い地点で大会を観戦したい.上述の条件を満たす点のうち,マラソンコースまでのユークリッド距離が最も近い点を求めよ.ただし,そのような点が複数ある場合には,その中で X 座標が最も小さい点を求めよ.さらにそのような点が複数ある場合には,その中で Y 座標が最も小さい点を求めよ.

입력

入力は 300,000 個以下のデータセットからなる.各データセットは次の形式で表される.

a b

a, b はともに 1 以上 109 以下の整数であり,マラソンコースの一方の端点の座標を表す.

入力の終わりは 2 つのゼロからなる行で表される.

출력

各データセットに対し,あなたがこのマラソン大会を観戦するのに最適な地点の X 座標と Y 座標を,空白区切りで一行に出力せよ.

예제1

  1. 예제 1

    입력
    2 3
    2 9
    7 2
    9 8
    4 9
    6 6
    5 7
    9 1
    5 3
    65537 735134400
    0 0
    
    예상 출력
    1 1
    1 4
    3 1
    1 1
    1 2
    0 1
    2 3
    1 0
    2 1
    23788 266832127