개발/뇌를 말랑하게하는 코테 연습

[프로그래머스 Lv1] 로또 최고/최저 찾기

njsung 2022. 6. 3. 17:39
반응형

[구현 환경]

  • C++

[문제 설명]

  • 사용자가 선택한 로또 번호 6개와 당첨번호 6개가 주어짐
  • 사용자가 선택한 번호 중 일부는 0으로 마스킹되어있음
  • 해당 상황에서 예상되는 가장 높은 등수와 가장 낮은 등수를 return하는 문제

[함수 원형]

std::vector<int> Solution(std::vector<int> lottos, std::vector<int> win_nums)
{
	std::vector<int> answer;
    
	return answer;
}

[풀이]

int getRank(int n)
{
	if (n < 2) return 6;
	else return 7 - n;
}

std::vector<int> Q2::Solution(std::vector<int> lottos, std::vector<int> win_nums)
{
	std::vector<int> res;

	int zero = 0;
	int nCorrect = 0;

	for (auto l : lottos)
	{
		if (l == 0) {
			zero++;
			continue;
		}
		else
		{
			for (auto w : win_nums)
			{
				if (l == w) {
					nCorrect++;
					break;
				}
			}
		}
	}

	res.emplace_back(getRank(nCorrect + zero));
	res.emplace_back(getRank(nCorrect));

	return res;
}
반응형