($N,$D,$K)=glob<>; print eval(join'+',$N-$K+1..$N)<$D|($D-=(@_=('',1..$K))*$#_/2)<0?-1:"@{$N-++$_[$K]or--$N,$K--while$D--;_}"