結果
問題 |
No.513 宝探し2
|
ユーザー |
![]() |
提出日時 | 2017-05-05 23:48:15 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
RE
|
実行時間 | - |
コード長 | 1,514 bytes |
コンパイル時間 | 288 ms |
コンパイル使用メモリ | 12,800 KB |
実行使用メモリ | 28,664 KB |
平均クエリ数 | 67.92 |
最終ジャッジ日時 | 2024-07-16 13:29:35 |
合計ジャッジ時間 | 3,614 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 1 RE * 11 |
ソースコード
# coding: utf-8 import array, bisect, collections, copy, heapq, itertools, math, random, re, string, sys, time sys.setrecursionlimit(10 ** 7) INF = 10 ** 20 MOD = 10 ** 9 + 7 def II(): return int(input()) def ILI(): return list(map(int, input().split())) def IAI(LINE): return [ILI() for __ in range(LINE)] def IDI(): return {key: value for key, value in ILI()} def requestNextDis(x, y): print("{0} {1}".format(x, y)) sys.stdout.flush() dis = float(input()) return dis def main(): left_x = 0 right_x = 10 ** 5 left_dis_x = requestNextDis(0, 0) right_dis_x = requestNextDis(right_x, 0) while True: mid_x = (left_x + right_x) // 2 if left_dis_x == right_dis_x: break elif left_dis_x > right_dis_x: left_x = mid_x left_dis_x = requestNextDis(left_x, 0) elif right_dis_x > left_dis_x: right_x = mid_x left_dis_x = requestNextDis(right_x, 0) up_y = 10 ** 5 down_y = 0 up_dis_y = requestNextDis(mid_x, up_y) down_dis_y = requestNextDis(mid_x, down_y) while True: mid_y = (up_y + down_y) // 2 if up_dis_y == down_dis_y: break elif up_dis_y > down_dis_y: up_y = mid_y up_dis_y = requestNextDis(mid_x, up_y) elif down_dis_y > up_dis_y: down_y = mid_y down_dis_y = requestNextDis(mid_y, down_y) requestNextDis(mid_x, mid_y) if __name__ == "__main__": main()