結果
問題 | No.441 和か積 |
ユーザー |
![]() |
提出日時 | 2017-03-08 17:20:42 |
言語 | Go (1.23.4) |
結果 |
AC
|
実行時間 | 3 ms / 1,000 ms |
コード長 | 796 bytes |
コンパイル時間 | 19,133 ms |
コンパイル使用メモリ | 236,856 KB |
実行使用メモリ | 6,944 KB |
最終ジャッジ日時 | 2024-06-27 03:46:36 |
合計ジャッジ時間 | 18,438 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 30 |
ソースコード
package main import ( "fmt" "io" "log" "math/big" "os" ) func main() { _ = solver(os.Stdin, os.Stdout) } // max(A*B, A+B) // A, B > 0 func solver(in io.Reader, out io.Writer) error { var A, B string fmt.Fscan(in, &A, &B) a := new(big.Int) a.SetString(A, 10) b := new(big.Int) b.SetString(B, 10) var ans string log.Println(A, B) log.Println(add(a, b), mul(a, b)) switch add(a, b).Cmp(mul(a, b)) { case -1: ans = "P" case 1: ans = "S" case 0: ans = "E" } fmt.Fprintln(out, ans) return nil } func add(x, y *big.Int) *big.Int { return big.NewInt(0).Add(x, y) } func sub(x, y *big.Int) *big.Int { return big.NewInt(0).Sub(x, y) } func mul(x, y *big.Int) *big.Int { return big.NewInt(0).Mul(x, y) } func div(x, y *big.Int) *big.Int { return big.NewInt(0).Div(x, y) }