ruby 2-liner
ruby []\ndef recover_array(a) =\n\n  a.sort!.uniq[1..].map{ 1>1&d=_1-a[0] and t=a.tally and break a.map{|x|\n    t[x]-=1 and 1/~t[x+d]-=1 and x+d/2 if t[x]>0 } 
```ruby []\ndef recover_array(a) =\n\n  a.sort!.uniq[1..].map{ 1>1&d=_1-a[0] and t=a.tally and break a.map{|x|\n    t[x]-=1 and 1/~t[x+d]-=1 and x+d/2 if t[x]>0 } rescue 0 }.compact\n```
['Ruby']