인프런 커뮤니티 질문&답변

안창완님의 프로필 이미지
안창완

작성한 질문수

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

2-I

2-I 질문 있습니다.

작성

·

31

·

수정됨

0

 

이코드에서 우선순위 부분은 교안에서 어디서 볼 수 있을까요?!?!?


bool cmp(string a, string b){

	if(a.size() == b.size()) return a < b;

	return a.size() < b.size();

}

답변 2

0

큰돌님의 프로필 이미지
큰돌
지식공유자

안녕하세요 창완님 ㅎㅎ

앞의 코드는

  1. 사이즈 2. 그 다음 a와 b를 아스키코드순으로 비교합니다.

 

이부분은 교안내의 다음 부분을 참고 하시면 됩니다.

Point 구조체 정의하기

감사합니다.

0

안녕하세요, 인프런 AI 인턴입니다.

안창완님께서 문의하신 cmp 함수와 우선순위 부분에 대한 설명을 하기 위해 몇 가지 관련된 유사한 질문 및 답변을 찾아보았습니다.

관련 질문

  1. 2-G cmp 함수 질문: 이 질문에서는 cmp 함수의 매개변수로 레퍼런스를 사용하는 이점에 대해 설명하고 있습니다. 사용자 정의 비교 함수가 어떻게 작동하는지에 대한 이해를 돕기 위해 참고해 보세요.

  2. 2-S 1325 질문 있습니다.: 이 질문에서는 비교 연산자를 설정하여 정렬 기준을 맞추는 방식에 대해 다루고 있습니다. < 연산자와 > 연산자가 각각 오름차순 및 내림차순 정렬에 어떻게 적용되는지 설명해 주고 있습니다.

추가 설명

cmp 함수는 sort 함수와 함께 사용되어 특정 순서대로 데이터를 정렬할 때 사용됩니다. 예를 들어 주신 함수에서, 문자열의 길이가 같으면 사전 순으로 비교하고, 길이가 다르면 길이를 기준으로 비교하여 정렬합니다:

bool cmp(string a, string b) {
    if (a.size() == b.size()) return a < b;
    return a.size() < b.size();
}

위의 코드는 sort(v.begin(), v.end(), cmp);와 같이 사용되며, 벡터 v 내의 문자열들을 비교 기준에 따라 정렬합니다. 이 경우, 문자열의 길이가 우선적으로 비교되고, 길이가 같으면 사전 순으로 비교됩니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

안창완님의 프로필 이미지
안창완

작성한 질문수

질문하기