I’d choose between Dartmouth and Columbia, assuming $ is not an issue, depending on fit (including rural/urban, core at Columbia). I would not go anywhere that is overcrowded or where I might not be able to major in what I choose (which it sounds like Berkeley has issues with). I know Illinois is great at CS, but I’d rather to go grad school there vs. undergrad (too big, not sure of how state of IL is doing $ wise, much higher international enrollment than most flagships and that enrollment also could decrease with COVID-19 issues and lead to decreased tuition revenue for school). Being a math major at Dartmouth would do you just fine – can also take CS classes and maybe get Masters in CS somewhere else.