본문 바로가기
프로그래머스 C++/Level.0

프로그래머스 C++ Level. 0 중앙값 구하기

by yeni_0224 2023. 4. 25.
728x90
반응형

중앙값은 어떤 주어진 값들을 크기의 순서대로 정렬했을 때 가장 중앙에 위치하는 값을 의미합니다. 예를 들어 1, 2, 7, 10, 11의 중앙값은 7입니다. 정수 배열 array가 매개변수로 주어질 때, 중앙값을 return 하도록 solution 함수를 완성해보세요.

#include <string>
#include <vector>
#include <algorithm>
using namespace std;

int solution(vector<int> array) {
    int answer = 0;
    sort(array.begin(), array.end());
    int a = array.size() * 0.5;
    answer = array[a];
    return answer;
}

숫자 크기 순으로 나열하고

배열의 가운데 인덱스를 int a에 담아주었다.

배열 인덱스의 값을 answer 로 넣어주었다.

sort 감사함니다 :)

 

다른 사람의 풀이를 봐보자.

#include <string>
#include <vector>
#include <algorithm>
using namespace std;

int solution(vector<int> array) {
    int answer = 0;
    sort(array.begin(), array.end());
    answer = array[array.size()/2];
    return answer;
}

인덱스를 구하는 과정을 위해 나는 변수를 만들어줬지만

이렇게 한번에 작업할 수도 있겠다.

 

이런 include는 처음 봤다!

#include <bits/stdc++.h>
using namespace std;

int solution(vector<int> array) {
    sort(array.begin(), array.end());
    return array[array.size() / 2];
}

https://cru6548.tistory.com/1

 

[Algorithm] <bits/stdc++.h>란?

+ 이 글은 작성자가 직접 공부하고 복습하며 작성한 글입니다. 만약 직접 작성하지 않았다면, 꼭 출처를 밝히겠습니다! + 이 글은 개인적인 공부를 바탕으로 작성되었기에, 틀린 부분이 있을 수

cru6548.tistory.com

새로 발견한 include에 대해 정리된 글을 참고하면 좋을 것 같다.

그런데 이 글을 읽고 온 결과! 나는 검색해서 각 함수에 필요한 것들만 헤더에 추가할 것 같다.

물론 아직 나는 공부중인 단계니까 배척하지 않고, 잘 기억하고 있을것이다!!

728x90
반응형