結果
| 問題 |
No.2953 Maximum Right Triangle
|
| コンテスト | |
| ユーザー |
AwashAmityOak
|
| 提出日時 | 2024-11-08 22:37:41 |
| 言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
| 結果 |
AC
|
| 実行時間 | 31 ms / 2,000 ms |
| コード長 | 497 bytes |
| コンパイル時間 | 512 ms |
| コンパイル使用メモリ | 12,544 KB |
| 実行使用メモリ | 10,752 KB |
| 最終ジャッジ日時 | 2024-11-08 22:37:45 |
| 合計ジャッジ時間 | 1,027 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 1 |
| other | AC * 6 |
ソースコード
def gcd(a, b):
return a if b == 0 else gcd(b, a % b)
def area(a, b, c, d):
return abs(a * d - b * c)
def solve(D, x, y):
g = gcd(x, y)
grad_y = x // g
grad_x = y // g
l = min((D - x) // grad_x, y // grad_y)
return area(x, y, x + grad_x * l, y - grad_y * l)
T = int(input())
for t in range(T):
D, x, y = map(int, input().split())
if x > y:
x, y = y, x
if x == 0:
print(y * D)
else:
print(max(solve(D, x, y), solve(D, y, x)))
AwashAmityOak