You didn't lose them, that's just the default for when the hours, minutes and seconds are zero. You can specify a format string to force these to be printed:
> ct <- as.POSIXct(t, format="%Y-%m-%d %H:%M:%OS")
> format(ct, "%Y-%m-%d %H:%M:%S")
[1] "2016-10-19 00:00:00"