ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [codility] FrogRiverOne c++
    Coding Test/codility 2022. 4. 9. 21:08
    728x90
    • 문제

    개구리가 가장 빨리 강을 건널 수 있는 나뭇잎의 위치?의 인덱스 값을 구하는 문제같다.

    A배열의 인덱스인 K는 시간(초)를 의미한다고 한다.

     

    • 문제 해결

    1. set 자료구조를 사용한다. set은 중복을 허용하지 않고, 자동으로 오름차순으로 정렬되는 특징이 있다.

       set 변수의 크기가 X와 같다면 목적지X에 도달한 것이다.

    #include <string>
    #include <algorithm>
    #include <vector>
    #include <iostream>
    #include <set>
    
    int solution(int X, std::vector<int> &A){
    
    	int len = A.size();
    	std::set<int> nSet;
    
    	for (int i = 0; i < len; i++) {
    		nSet.insert(A.at(i));
    		if (nSet.size() == X)
    			return i;
    	}
    
    	return -1;
    }
    
    #define FrogRiverOne 
    
    #ifdef FrogRiverOne 
    
    int main() {
    
    	std::vector<int> nVec = { 1,3,1,4,2,3,5,4 };
    	int X = 5;
    	std::cout << solution(5 ,nVec);
    
    	return 0;
    }
    #endif

    728x90

    'Coding Test > codility' 카테고리의 다른 글

    [codility] MaxCounters c++  (0) 2022.04.10
    [codility] PermCheck c++  (0) 2022.04.09
    [codility] TapeEquilibrium c++  (0) 2022.04.09
    [codility] PermMissingElem c++  (0) 2022.04.09
    [codility] FrogJmp c++  (0) 2022.04.08

    댓글

© 2022. code-space ALL RIGHTS RESERVED.