본문 바로가기

코딩테스트/프로그래머스

[프로그래머스] 코딩테스트 입문 Day3

728x90
반응형
  • Day3 사칙연산, 배열, 수학
    • 나머지 구하기
    • 중앙값 구하기
    • 최빈값 구하기
    • 짝수는 싫어요
//나머지 구하기
int solution(int num1, int num2) {
    return num1%num2;
}

//중앙값 구하기
int solution(vector<int> array) {
    sort(array.begin(),array.end());
    return array.at(array.size()/2);
}

//최빈값 구하기
int solution(vector<int> array) {
    int answer = -1;
    int standard = -1;
    int duplication = -1;
    vector<int> v(1000,0);
    
    for(int i=0; i<array.size(); i++){
        v.at(array.at(i))++;
    }
    
    for(int j=0; j<v.size(); j++){
        if(standard < v.at(j)){
            answer = j;
            standard = v.at(j);
        }else if(standard == v.at(j)){
            duplication = j;
            answer = j;
        }else{
            continue;
        }
    }
    
    return answer == duplication ? -1 : answer;
}

//짝수는 싫어요
vector<int> solution(int n) {
    vector<int> answer;
    
    for(int i=0; i<=n; i++){
        if(i%2 == 1){
            answer.push_back(i);
        }
    }
    
    return answer;
}

C++이 익숙하지 않다 보니 map을 활용할 줄 몰라서 최빈값 구하기를 vector로 풀었다. dictionary 왜 없어

엔진에서 코딩하는건 본인 실력이 아니라는 교수님의 말씀이 떠오르는 밤이다~

728x90
반응형