külső és belső helyhatározóragok

Milyen szabály szerint toldalékoljuk a magyar helységneveket: -re és -en (pl. Budapestre, Budapesten) vagy -ba/-be és -ban/-ben (pl. Veszprémbe, Veszprémben). Egy konkrét probléma: melyik a helyes változ ?Csíkszeredán vagy Csíkszeredában (ill. Csíkszeredára vagy Csíkszeredába)?