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

dkswhdgur1209님의 프로필 이미지
dkswhdgur1209

작성한 질문수

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

[필수개념] 순열 : 개념과 next_permutation

교안 p.117 예제질문입니다

작성

·

289

0

안녕하세요, 강사님. 강의 잘 듣고 있습니다.

제가 교안을 공부하다가 p.117에 있는

예제에 대해서 질문 드립니다.

http://boj.kr/2cb405455d8a4118afa5a962f387388d 처럼

17행을 교안과 달리 }while(next_permutation(b.begin(), b.end())); 으로 작성하면 에러가 나는데 그 이유가 무엇인지 알 수 있을까요?

교안은 }while(next_permutation(b, b + 3)); 로 작성되어 출력이 되어집니다

답변 2

1

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

안녕하세요 ㅎㅎ 10cm님이 잘 말씀해주셨는데요.

첨언하자면요.

	int b[] = {1, 2, 3};
	do{
		for(int i : b) cout << i << " ";
		cout << '\n';
	}while(next_permutation(b.begin(), b.end()));

int[]는 정적 배열입니다.

vector<int>는 동적 배열이구요.

정적배열은 지원하는게 많지가 않아요. begin이나 end 조차 지원되지 않습니다.

그러나 우리의 vector는 begin, end, find 등 여러가지가 지원되는 배열입니다.

정적 배열은 레쓰비, vector는 TOP라고 생각하시면 됩니다.

 

감사합니다.

1

배열에는 begin end 못 써요

배열은 클래스가 아니라 begin end 같은 멤버펑션이 없어요

dkswhdgur1209님의 프로필 이미지
dkswhdgur1209

작성한 질문수

질문하기