2일전에 내가 물어봤던거의 연장선인데
먼저 숫자 두개 x랑 y가 주어졌으면 그것을 이어붙였을때
xy가 더 크면 false yx가 더크면 true를 리턴하는 bool 함수를 만들고
어떠한 숫자들을 담고 있는 벡터가 있으면은 그것들을 순서들을 나열했을떄 가장 큰수가
나올수 있게 벡터안에 있는 숫자들을 정렬해서 그 벡터를 다시 리턴하는
클라스 템플릿 함수 만들고, 단 위에 내가 말한 bool함수를 function pointer로
가리킬수 있게
그리고 최종적으로 저러한 벡터를 여러개 담고 있는 2d벡터가 주어졌을때
각 벡터안에 있는 숫자들을 재정렬했을떄 최댓값의 크기 순대로 2d벡터를 재정렬 해서
2d벡터안에 k번째 벡터를 배출해야함.
위에 내가 말한 bool 함수랑 템플릿 함수를 무조건 호출해야하고
조건은 sorting algorithm은 무조건 다 insertion sort를 써야함.
여기 이게 내가 학교 과제 원문 그대로 스샷한거고.
이게 내가 만든 코드들인데
이게 bool함수고
이게 내가 말한 벡터 재조합했을떄 가장 크게 되게 재조합하는 템플릿 함수고
여기서부터가 위에 두 함수 다 호출한 최종함수인데
질문이 뭐냐면 나머지는 다 구글 테스트 하니까 통과하는데
이런식으로 너무 큰 숫자를 테스트 하면
string을 int로 변한하는 stoi함수가 범위를 넘어가버려서 오류가 생기는데
그래서 크기 비교할떄 string을 int로 바꿔서 비교하지 않고
그냥 있는 그대로 string 자체로 사전식으로 비교하게 했더니
vector subscript out of range라는데 왜 그런거냐
해결했고 그 이유는 구글 테스트에서 내가 벡터 사이즈 4로
설정했는데 인덱스를 0,1,2,3 까지 해야하는데 실수로 4까지 해서 그런거임
개추
빠른 반성은 개추야
이게훈훈하게끝나네
마지막 사진은 선을 좀 넘는데