結果
問題 |
No.1726 [Cherry 3rd Tune B] ジャマイカビアポン
|
ユーザー |
|
提出日時 | 2024-01-23 02:14:29 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 1,353 ms / 3,000 ms |
コード長 | 1,199 bytes |
コンパイル時間 | 245 ms |
コンパイル使用メモリ | 82,176 KB |
実行使用メモリ | 330,000 KB |
最終ジャッジ日時 | 2024-09-28 06:34:34 |
合計ジャッジ時間 | 22,671 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 39 |
ソースコード
## https://yukicoder.me/problems/no/1726 def main(): N, M = map(int, input().split()) P = list(map(int, input().split())) grasses = {} for i in range(N): a, b = map(int, input().split()) grasses[(a, b)] = P[i] balls = [] for _ in range(M): c, d = map(int, input().split()) balls.append((c, d)) def calc(balls, grasses, keys): answer = 0 vector_map = {} for base_ball in balls: for (gx, gy), p in grasses.items(): vx = gx - base_ball[0] vy = gy - base_ball[1] if (vx, vy) not in vector_map: vector_map[(vx, vy)] = 0 vector_map[(vx, vy)] += p ans = max(vector_map.values()) return max(answer, ans) keys = list(grasses.keys()) answer1 = calc(balls, grasses, keys) answer2 = calc([(x, -y) for x, y in balls], grasses, keys) answer3 = calc([(-x, y) for x, y in balls], grasses, keys) answer4 = calc([(-x, -y) for x, y in balls], grasses, keys) answer = max(answer1, answer2, answer3, answer4) print(answer) if __name__ == '__main__': main()