この問題を解いるのですが,タイトルのようなことが起こります.
例えば char s[]="aiueodfsguia" の場合は answer: aiueodfsguia, aaaiiueodfsguフフフフフフフフフフフフaiueodfsguia
と出力されてしまいます.何故でしょうか?
#include <iostream>
int main(void){
int n=12;
char s[]="aiueodfsguia";
char t[]=" ";
int l1=0, r1=0;
while(l1+r1<n){
int l2=0,r2=0;
for(; s[l1+l2]==s[n-1-(r1+r2)]; l2++,r2++){}
t[l1+r1] = (s[l1+l2]>s[n-1-(r1+r2)]) ? s[n-1-(r1++)] : s[(l1++)];
}
std::cout << "answer: " << s << ", " << t << "." << std::endl;
std::cin >>s;
return 0;
}