Start with a sequence, not a place list
Put the cities into one geographic order and remove any stop that survives only as a rushed day trip. Seoul and Busan work as substantial bases; Gyeongju or Jeonju can fit as a shorter cultural stop when the arrival and onward legs still leave a useful block. The builder allocates minimum city time first, then distributes spare days without inventing reservations or opening hours.
Protect every change of city
A headline train time is not the transfer. Leaving the hotel, reaching the correct station or terminal, finding the platform, storing luggage and reaching the next accommodation all consume the day. Treat the first block in every new city as a transfer day with only one flexible nearby activity. This keeps a delayed train or difficult bag transfer from breaking several paid bookings.
Book in dependency order
Confirm the international arrival and departure, then the city sequence, then the hardest intercity legs, then cancellable stays, and only then timed attractions. Search exact KORAIL tickets before comparing a visitor pass, keep Sokcho bus spend and Jeju air or ferry spend outside that rail calculation, and check every final address before paying for an airport or station transfer.