inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

2-I

2- I segmentation fault

164

kkim360

작성한 질문수 31

0

안녕하세요 선생님 해당 코드는 정답코드입니다. 그러나 제가 주석처리한부분으로 코드를 짰을때는 segmentation error가 나와서 그 이유를 여쭤보고 싶습니다.

또한 선생님께서는 size()를 사용하셨고 저는 length()를 사용했는데 size()와 length()의 장단점도 알고싶습니다

 

http://boj.kr/df71a1d8b94a49cca8ed3d2cbb104d78

감사합니다

c++ 코딩-테스트

답변 1

0

큰돌

안녕하세요 ㅎㅎ

	// if(s1.length() == s2.length()){
	// 	int i = 0;
	// 	while(s1[i] == s2[i]){
	// 		i++;
	// 	}
	// 	return s1[i] < s2[i];
	// }

이렇게만 bool 함수를 작성하셨다면 s1와 s2의 길이가 다를 때는 어떻게 하는지가 명시가 되어있지 않아서 에러가 뜨는 것 같습니다. 모든 경우의 수를 고려한 bool 함수를 구축해야 합니다.

 

또한 선생님께서는 size()를 사용하셨고 저는 length()를 사용했는데 size()와 length()의 장단점도 알고싶습니다

>>

C++의 std::string 클래스에서 length()size()는 동일한 기능을 제공합니다. 저는 개인적으로 size()가 글자수가 적기 때문에 이를 애용하는 편입니다.

 

참고로 공통점은 다음과 같습니다.

공통점

  • length()size()는 모두 문자열의 길이(문자의 개수)를 반환합니다.

  • 반환 값의 타입은 std::string::size_type입니다.



또 질문 있으시면 언제든지 질문 부탁드립니다.

좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)

감사합니다.

강사 큰돌 올림.

0

kkim360

선생님 length()와 size()의 반환 타입이 int값이 아님에도 불구하고 int형과 비교연산자를 사용할 수 있는 이유는 뭔가요??

예시 코드입니다!

int I = 0;
vector<int> v;

if(I == v.length()) cout << "same!";

0

큰돌

안녕하세요 ㅎㅎ

int와 std::size_t를 비교할 때는 int는 size_t로 변환되서 비교가 됩니다. 이를 유형 변환( type conversion 또는 type promotion)이 일어났다라고 합니다.

참고로 size_t는 0부터 특정양수까지 표현되므로 음수와 size_t타입을 비교할 때는 주의해야 합니다.

size_t의 범위

  • 32비트 시스템: size_t는 4바이트(32비트), 0에서 4,294,967,295(2^32 - 1)까지

  • 64비트 시스템: size_t는 8바이트(64비트), 0에서 18,446,744,073,709,551,615(2^64 - 1)까지

 

감사합니다.

코딩살구클럽 가입부탁드립니다

0

15

2

코딩살구클럽 가입 요청 확인부탁드립니다

0

19

2

5-S 테스트 케이스 질문

0

29

2

코살 문제풀이 환경

0

45

2

2 - T 오큰수 문제가 있는 것 같습니다.

0

41

1

추천 추가문제들

0

40

2

프로그래머스 코테 환경 관련해서 질문드립니다.

0

42

2

해당 문제에 대한 채점이 코딩살구클럽에서 올바르게 처리되지 않습니다.

0

39

2

균형 이진 트리 설명 시 높이 숫자

0

29

2

4-H 질문드립니다.

0

35

2

1-K 질문드립니다.

0

41

2

대기업 인적성 시험 질문

0

41

2

4-C 질문드립니다

0

41

2

[수학숙제 / BOJ 2870] 채점 서버 오작동

0

37

1

코테 준비 질문

0

50

1

살구클럽가입 요청드려요

0

38

2

1-I 문제 질문

0

39

2

코딩살구클럽 가입

0

57

2

AI 코딩 도구 사용 시 학습 방법 조언

0

51

2

코딩살구클럽 오류

0

61

2

코살클 [3-F 괄호 추가하기] 프라이빗 9번 제보

0

46

1

코딩살구클럽 테스트 케이스 오류 제보

0

52

2

삼성 코딩테스트

0

61

2

틀린 이유를 못찾겠습니다

0

47

2