結果

問題 No.2790 Athena 3
ユーザー ducktail
提出日時 2024-06-23 17:55:42
言語 Ruby
(3.4.1)
結果
AC  
実行時間 91 ms / 2,000 ms
コード長 595 bytes
コンパイル時間 307 ms
コンパイル使用メモリ 7,680 KB
実行使用メモリ 12,416 KB
最終ジャッジ日時 2024-06-23 17:55:45
合計ジャッジ時間 2,821 ms
ジャッジサーバーID
(参考情報)
judge1 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 14
権限があれば一括ダウンロードができます
コンパイルメッセージ
Syntax OK

ソースコード

diff #

module Athena3
  def self.solve(a)
    ax, ay, bx, by, cx, cy = a
    mx = 0
    ope([ax, ay]).each do |p0|
      ope([bx, by]).each do |p1|
        ope([cx, cy]).each do |p2|
          mx = [mx, area(p0, p1, p2)].max
        end
      end
    end
    mx
  end
  def self.ope(p)
    [
      [p[0]+1, p[1]],
      [p[0]-1, p[1]],
      [p[0], p[1]+1],
      [p[0], p[1]-1]
    ]
  end
  def self.area(a, b, c)
    x0 = b[0] - a[0]
    y0 = b[1] - a[1]
    x1 = c[0] - a[0]
    y1 = c[1] - a[1]
    (x0 * y1 - y0 * x1).abs / 2.0
  end
end

puts Athena3.solve(gets.chomp.split(/\s+/).map(&:to_i))

0