結果
| 問題 |
No.55 正方形を描くだけの簡単なお仕事です。
|
| コンテスト | |
| ユーザー |
toshiro_yanagi
|
| 提出日時 | 2025-04-28 22:06:59 |
| 言語 | Ruby (3.4.1) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 1,191 bytes |
| コンパイル時間 | 571 ms |
| コンパイル使用メモリ | 8,224 KB |
| 実行使用メモリ | 13,440 KB |
| 最終ジャッジ日時 | 2025-04-28 22:07:03 |
| 合計ジャッジ時間 | 4,013 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 WA * 2 |
| other | AC * 9 WA * 12 |
コンパイルメッセージ
Main.rb:8: warning: ambiguous first argument; put parentheses or a space even after `-` operator Syntax OK
ソースコード
class Main
INF = 2 ** 60
def start
aa = f9(input.split.map(&:to_i))
idx = f8(aa)
if not idx
puts -1
else
echo f7(aa, idx).join(" ")
end
self.class.send(:remove_const, :INF)
return nil
end
private
def f7(aa, idx)
def f(aa, i, j)
(aa[i][j] - @o[j])
end
@o = aa[idx]
aa.delete_at(idx)
x, y = 0, 0
for i in 0...2
x += f(aa, i, 0)
y += f(aa, i, 1)
end
@o = nil
return [x / 2, y / 2]
end
def f8(aa)
def f(b)
max = -INF
idx = nil
for i in 0...b.size
v = b[i]
if v > max
max = v
idx = i
end
end
return (idx - 1) % b.size
end
b = []
n = aa.size
for i in 0...n
x = 0
for j in 0...2
x += (aa[(i + 1) % n][j] - aa[i][j]) ** 2
end
b += [x]
end
return false if b.to_set.size != 2
return f(b)
end
def f9(a)
aa = []
while a.size > 0
t = []
for _ in 0...2
t.append a.pop
end
aa += [t.reverse]
end
aa.reverse
end
def echo(x)
print x
puts
end
def input = gets.chomp
end
Main.new.start
toshiro_yanagi