https://programmers.co.kr/learn/courses/30/lessons/42862

 

프로그래머스

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

programmers.co.kr

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#include <string>
#include <vector>
 
using namespace std;
 
int solution(int n, vector<int> lost, vector<int> reserve) {
    n -= lost.size();
    
    for (int i = 0; i < reserve.size(); i++)
    {
        for (int j = 0; j < lost.size(); j++)
        {
            if(reserve[i] == lost[j])
            {
                n++;
                reserve[i] = lost[j] = -1;
                break;
            }
        }
    }
    
    for (int i = 0; i < reserve.size(); i++)
    {
        if(reserve[i]==-1)continue;
        for (int j = 0; j < lost.size(); j++)
        {
            if(lost[j]==-1)continue;
            if(reserve[i] - 1 == lost[j])
            {
                n++;
                lost[j] = -1;
                break;
            }
            else if(reserve[i] + 1 == lost[j])
            {
                n++;
                lost[j] = -1;
                break;
            }
        }
    }
    return n;
}
http://colorscripter.com/info#e" target="_blank" style="color:#e5e5e5text-decoration:none">Colored by Color Scripter

 

예외처리가 곤란한 문제였다.

질문하기 개수만 봐도 사람들이 얼마나 멘탈이 터지는지 알 수 있었다.

 

내가 놓쳤던 것은 여벌이 있는데 잃어버린 사람은 (남은 옷이 하나밖에 없어서) 빌려줄 수 가 없다는 부분이었다.

 

지문이 좀 이상하긴 한 거 같다. 도둑이 배려심이 깊은지 여벌이 있는 사람도 딱 하나만 훔쳐간다.. 

 

+ Recent posts