program main implicit none integer*8::N,D,K,KK,NN,NK,i,a,b integer*8::ans(100)=(/(i,i=1,100)/) character*32::cformat='(i0, 99(1x,i0))' read *,N,D,K NK=N-K KK=K*(K+1)/2 NN=KK+NK*K if(NN.lt.D.or.KK.gt.D) then print '("-1")' return else if(N.eq.K) then write(*,cformat) ans(1:K) else a = (D-KK)/NK b = (K-a) + MOD(D-KK,NK) if(b.eq.0) then write(*,cformat) ans(1:(K-a-1)),ans((N-a+1):N) else write(*,cformat) ans(1:(K-a-1)),b,ans((N-a+1):N) end if end if end program main