var used: []bool var k: []int func main() var n: int :: cui@inputInt() do @k :: #[n]int for i(0, n - 1) do @k[i] :: cui@inputInt() end for do @used :: #[n]bool var ans: []int :: f(n) if(ans =& null) do cui@print("-1\n") else do cui@print("\{ans[0]} \{ans[1]} \{ans[2]}\n") end if func f(n: int): []int if(n < 3) ret null end if for i(0, ^@k - 1) if(@used[i]) skip i end if for j(i + 1, ^@k - 1) if(@used[j]) skip j end if for k(j + 1, ^@k - 1) if(@used[k]) skip k end if var flag: bool :: true var a: int :: @k[i] var b: int :: @k[j] var c: int :: @k[k] if(a = b | b = c | c = a | (a < b & b < c) | (a > b & b > c)) do flag :: false end if if(flag) do @used[i] :: true do @used[j] :: true do @used[k] :: true var res: []int :: f(n - 3) do @used[i] :: false do @used[j] :: false do @used[k] :: false if(res =& null) ret[i, j, k] end if end if end for end for end for ret null end func end func