qkrwnstns52   4년 전

왜 계속 시간초과 뜨는지 모르겟네요.

어떻게 하면 고칠 수 있는지좀 알려주세요.. ㅠㅠ

clrmt   4년 전

string에 계속 이어붙이기보다는 그냥 바로바로 출력하는건 어떤가요?

djm03178   4년 전

이어 붙이는 것은 상관 없으나, change = change + "asdf"; 라는 문장은 change의 내용을 전부 복사해 새로운 string 객체를 만들고, 거기에 "asdf"라는 문자열을 이어붙인 뒤 그것을 다시 change에 대입하는 과정을 전부 거치게 되기 때문에 이어붙이는 횟수의 제곱에 비례하는 시간이 걸립니다. change = change + "asdf"; 대신에 change += "asdf"; 라고 하면 새로운 객체를 만들지 않고 기존의 객체에 바로 이어붙이므로 그런 문제가 발생하지 않습니다.

댓글을 작성하려면 로그인해야 합니다.