鍋あり谷あり

テーマを決めずに適当に書いています。

f(f(x))==-x

jijixi's diary 経由で見た問題
http://oss.timedia.co.jp/index.fcgi/kahua-web/show/ossz/oneline/2006-04-17
を解いてみた:
ruby で書いてみた。

def f(x)
  if x==0
    0
  elsif x.abs.ceil % 2 == 0
    0<x ? 1-x : -x-1
  else
    0<x ? x+1 : x-1
  end
end

偶奇性を使えばいいことにはすぐに気づいたんだが、f(0)==0 に気づくのに時間がかかった。弱い。

追記:回答が出ている。が。私は無限大は実数じゃないと思う。「浮動小数点型を受け取り〜」だったら無限大もありだと思うけど。