작성
·
171
0
안녕하세요 선생님
dev에서 출력까지 모두 확인하고 백준에 제출하였는데 런타임에러(Segfault)가 뜨네요. 왜 그런건지 알수있을까요??
http://boj.kr/909703751c8045c0af6d239464b65482
답변 1
1
안녕하세요 진규님 ㅎㅎ
이렇게 해보시겠어요? ㅎㅎ
나머지 부분은 모두 잘 짜셨습니다. ㅎㅎ
#include <bits/stdc++.h>
using namespace std;
string s, ret;
int main(){
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
getline(cin, s);
ret.resize(s.length()); // 문자열 ret의 길이를 s의 길이와 동일하게 설정
for(int i = 0; i < s.length(); i++){
if(int(s[i]) >= 65 && int(s[i]) <= 77){
ret[i] = char(int(s[i]) + 13);
}
else if(int(s[i]) >= 78 && int(s[i]) <= 90){
ret[i] = char(int(s[i]) - 13);
}
else if(int(s[i]) >= 97 && int(s[i]) <= 109){
ret[i] = char(int(s[i]) + 13);
}
else if(int(s[i]) >= 110 && int(s[i]) <= 122){
ret[i] = char(int(s[i]) - 13);
}
else ret[i] = s[i];
}
cout << ret; // 수정된 전체 문자열을 한 번에 출력
}
또 질문 있으시면 언제든지 질문 부탁드립니다.
좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)
감사합니다.
강사 큰돌 올림.