Coding Test/codility
[codility] FrogRiverOne c++
owls
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