PS: Here is a simpler version(no recursion) of Arithma's solution:
def f(n):
offset = 1 if n > 0 else (-1 if n != 0 else 0)
if n % 2 == 1:
return n + offset
else:
return - (n-offset)
Result:
>>> for i in range(-10, 11):
... print i, "=>", f(f(i))
...
-10 => 10
-9 => 9
-8 => 8
-7 => 7
-6 => 6
-5 => 5
-4 => 4
-3 => 3
-2 => 2
-1 => 1
0 => 0
1 => -1
2 => -2
3 => -3
4 => -4
5 => -5
6 => -6
7 => -7
8 => -8
9 => -9
10 => -10
>>>