結果
問題 | No.455 冬の大三角 |
ユーザー |
![]() |
提出日時 | 2023-01-09 23:22:54 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 45 ms / 2,000 ms |
コード長 | 1,222 bytes |
コンパイル時間 | 401 ms |
コンパイル使用メモリ | 82,024 KB |
実行使用メモリ | 60,916 KB |
最終ジャッジ日時 | 2024-12-18 00:50:32 |
合計ジャッジ時間 | 4,642 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 54 |
ソースコード
def pprint(G): for g in G: print("".join(g)) from math import * H, W = map(int, input().split()) G = [] for i in range(H): G.append(list(input())) flag = 1 for i in range(H): for j in range(W): if G[i][j] == "*": if flag: x0, y0 = i, j flag = 0 else: x1, y1 = i, j for i in range(H): for j in range(W): if G[i][j] == "-": x, y = i, j dx0, dy0 = x - x0, y - y0 dx1, dy1 = x - x1, y - y1 if dx0 == 0 and dx1 == 0: continue if dy0 == 0 and dy1 == 0: continue if dx0 * dy0 * dx1 * dy1 == 0: G[i][j] = "*" pprint(G) exit() if dx0 < 0: dx0, dy0 = -dx0, -dy0 if dx1 < 0: dx1, dy1 = -dx1, -dy1 g0 = gcd(dx0, abs(dy0)) g1 = gcd(dx1, abs(dy1)) dx0 //= g0 dy0 //= g0 dx1 //= g1 dy1 //= g1 if (dx0, dy0) == (dx1, dy1): continue G[i][j] = "*" pprint(G) exit()