본문 바로가기

Algorithm/프로그래머스

프로그래머스 중복된 숫자 개수 C++

반응형

프로그래머스 : 중복된 숫자 개수

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

 


- 문제

정수가 담긴 배열 array와 정수 n이 매개변수로 주어질 때, array에 n이 몇 개 있는 지를 return 하도록 solution 함수를 완성해보세요.

 


- 풀이

#include <string>
#include <vector>

using namespace std;

int solution(vector<int> array, int n) {
    int answer = 0;
    for(int num : array)
    {
        if(num == n)
        {
            answer++;
        }
    }
    return answer;
}

 

1. for(int i = 0; i < array.size(); i++)

을 사용해도 되고,

2. for(int num : array)를 사용해도 된다.

 

1을 사용하는게 더 빠르고 무조건 좋다고 보지만 가끔씩 가독성을 위하여 2번을 사용하기도 한다(개인적인 의견 및 친한 분들의 의견).

 

 

 


- 다른 사람의 풀이

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

int solution(vector<int> array, int n) {
    int answer = 0;
    answer = count(array.begin(),array.end(),n);
    return answer;
}

 

count를 사용할 줄 알았으면 반복문을 쓸 필요조차 없었네요...


- 기억할 것!

- 어떤 함수들이 있는지 기억할 것! (algorithm의 count 함수)

반응형