結果
問題 |
No.505 カードの数式2
|
ユーザー |
![]() |
提出日時 | 2019-12-26 11:58:53 |
言語 | Java (openjdk 23) |
結果 |
AC
|
実行時間 | 125 ms / 2,000 ms |
コード長 | 1,229 bytes |
コンパイル時間 | 2,459 ms |
コンパイル使用メモリ | 77,136 KB |
実行使用メモリ | 54,280 KB |
最終ジャッジ日時 | 2024-10-03 06:34:37 |
合計ジャッジ時間 | 6,501 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 29 |
ソースコード
import java.util.*; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); long max = sc.nextInt(); long min = max; for (int i = 1; i < n; i++) { long tmax = Long.MIN_VALUE; long tmin = Long.MAX_VALUE; long x = sc.nextInt(); tmax = Math.max(tmax, max + x); tmax = Math.max(tmax, max - x); tmax = Math.max(tmax, max * x); tmin = Math.min(tmin, max + x); tmin = Math.min(tmin, max - x); tmin = Math.min(tmin, max * x); tmax = Math.max(tmax, min + x); tmax = Math.max(tmax, min - x); tmax = Math.max(tmax, min * x); tmin = Math.min(tmin, min + x); tmin = Math.min(tmin, min - x); tmin = Math.min(tmin, min * x); if (x != 0) { tmax = Math.max(tmax, max / x); tmin = Math.min(tmin, max / x); tmax = Math.max(tmax, min / x); tmin = Math.min(tmin, min / x); } max = tmax; min = tmin; } System.out.println(max); } }