i’m an incoming freshman at carnegie mellon and i’d definitely consider applying here — although the computer science program is only slightly less competitive than any ivy.
i know cs admits this cycle to stanford, uiuc (attending washu bc of oos costs), mit, and uc berkeley (he also got into ucla off the waitlist). generally, the cs admit programs are very much a lottery. my friend going to stanford was only accepted to reach schools (duke, stanford, amherst, and usc). my friend going to mit was only accepted to mit; he was waitlisted at stony brook and bing. i’m not super close with the uiuc guy, but he was attending ohio state until he got off the waitlist at washu.
although i don’t have personal experience applying for cs, i 100% agree with adding more match/targets/safeties to your list. this year i was guilty of only applying to four safeties with the rest of my applications being reaches. i was rejected from one of my safeties and waitlisted at another. luckily, i got into three of my reach schools, but i would’ve felt more secure going into march if i applied to more safeties and matches. but also consider carnegie mellon ed2, it really boosts your chances a lot at a cs program tied with mit.