main = do
  k <- readLn
  let n = k `div` 10000000000000000
  print n
  putStr . unwords . map show $ solve n k

solve n k
  | k >= n = map (+ p) $ solve n q 
  | otherwise = as ++ bs
    where
      (p, q) = k `divMod` n
      as = replicate q (n - 1 + n * q)
      bs = replicate (n - q) (n - 1 - q)