結果
問題 |
No.5009 Draw A Convex Polygon
|
ユーザー |
|
提出日時 | 2025-04-27 16:11:04 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 2,043 ms / 2,600 ms |
コード長 | 1,032 bytes |
コンパイル時間 | 418 ms |
コンパイル使用メモリ | 82,432 KB |
実行使用メモリ | 310,032 KB |
スコア | 1,000,000 |
平均クエリ数 | 1000001.00 |
最終ジャッジ日時 | 2025-04-27 16:11:09 |
合計ジャッジ時間 | 5,105 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
純コード判定しない問題か言語 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 1 |
ソースコード
N = 10**6 L = [] for i in range(1, 700): for j in range(1, 700): L.append((j/i, i, j)) L.sort() # print(L) nowx = 1 nowy = -10**9 + 1 nowslope = -1 points = [(nowx, nowy)] NN = len(L) for i in range(1, NN): slope = L[i][0] x, y = L[i][1], L[i][2] if slope <= nowslope: continue nowx += x nowy += y nowslope = slope points.append((nowx, nowy)) if len(points) == N // 4: break # ans.append(str(nowx) + ' ' + str(nowy)) points2 = [] points3 = [] points4 = [] for (x, y) in points: points2.append((x, -y)) points3.append((-x, -y)) points4.append((-x, y)) points2.reverse() points4.reverse() ans = [] for x, y in points: ans.append(str(x) + ' ' + str(y)) for x, y in points2: ans.append(str(x) + ' ' + str(y)) for x, y in points3: ans.append(str(x) + ' ' + str(y)) for x, y in points4: ans.append(str(x) + ' ' + str(y)) print(N) print('\n'.join(ans)) # for i in range(N): # print(ans[i][0], ans[i][1]) # print(NN, N, len(ans))