코딩테스트 연습 - 체육복 | 프로그래머스 (programmers.co.kr)
코딩테스트 연습 - 체육복
점심시간에 도둑이 들어, 일부 학생이 체육복을 도난당했습니다. 다행히 여벌 체육복이 있는 학생이 이들에게 체육복을 빌려주려 합니다. 학생들의 번호는 체격 순으로 매겨져 있어, 바로 앞번
programmers.co.kr
#include <string>
#include <vector>
using namespace std;
int solution(int n, vector<int> lost, vector<int> reserve) {
int answer = 0;
vector<int> array(n+2,1);
for(int i=0;i<reserve.size();i++)
{
array[reserve[i]]++;
}
for(int i=0;i<lost.size();i++)
{
array[lost[i]]--;
}
for(int i=1;i<=n;i++)
{
if(array[i-1]==0&&array[i]==2)
{
array[i-1]=array[i]=1;
}
else if(array[i]==2 && array[i+1]==0)
{
array[i]=array[i+1]=1;
}
}
for(int i=1;i<=n;i++)
{
if(array[i]>0)
{
answer++;
}
}
return answer;
}
'Algorithm > C++' 카테고리의 다른 글
[프로그래머스 C++] 위장 / 해시 , map (0) | 2021.09.21 |
---|---|
[프로그래머스 C++] 전화번호 목록/ 해시, substr (0) | 2021.09.21 |
[프로그래머스 C++] 완주하지 못한 선수 / 해시 (0) | 2021.09.11 |
[프로그래머스 C++] 기능개발/ 스택, 큐 (0) | 2021.09.10 |
[프로그래머스 C++] K번째 수 / 정렬 (0) | 2021.09.09 |
댓글