Я как раз решал задачу по струнам. Мне пришлось инициализировать всю строку буквой «а». Размер строки n может достигать 10 ^ 5. Я использовал метод грубой силы для инициализации каждого элемента циклами.
string s;
for(int i = 0;i < n;i++)s[i]='a';
Когда я собирался распечатать строку, используя
cout<<s;
Ничего не напечатано! Чтобы напечатать строку, мне пришлось распечатать ее поэлементно: -
for(int i=0;i<n;i++)cout<<s[i];
Кроме того, этот метод дал TLE.
Но, когда я инициализировал строку, как это
string s(n,'a');
решение принято. И я вообще смог напечатать целую строку. Почему такая огромная разница вызвана просто разными методами инициализации?