본문 바로가기

Algorithm350

[프로그래머스]Summer/Winter Coding(~2018) : 배달 (level 3) (c++) https://programmers.co.kr/learn/courses/30/lessons/12978 코딩테스트 연습 - 배달 5 [[1,2,1],[2,3,3],[5,2,2],[1,4,2],[5,3,1],[5,4,2]] 3 4 6 [[1,2,1],[1,3,2],[2,3,2],[3,4,3],[3,5,2],[3,5,3],[5,6,1]] 4 4 programmers.co.kr bfs #include #include #include using namespace std; const int INF = 987654321; // 1번 마을에서 K의 시간내에 배달할 수 있는 마을 개수 구하기 int bfs(vector &v_adj, int N, int K) { // 1번 마을에서 N번째 마을까지의 최소 시간을 저장 ve.. 2020. 7. 10.
[프로그래머스]2019 카카오 개발자 겨울 인턴십 : 징검다리 건너기 (level 3) (c++) https://programmers.co.kr/learn/courses/30/lessons/64062 코딩테스트 연습 - 징검다리 건너기 [2, 4, 5, 3, 2, 1, 4, 2, 5, 1] 3 3 programmers.co.kr 이분탐색 #include #include #include using namespace std; const int MAX = 200000000; bool check(vector &stones, int k, int passed) { // 왼쪽 땅부터 시작 int last_idx = -1; for (int i = 0; i = 0) { // 마지막 디딤돌간의 간격이 k.. 2020. 7. 10.
[프로그래머스]연습문제 : N-Queen (level 3) (c++) https://programmers.co.kr/learn/courses/30/lessons/12952 코딩테스트 연습 - N-Queen 가로, 세로 길이가 n인 정사각형으로된 체스판이 있습니다. 체스판 위의 n개의 퀸이 서로를 공격할 수 없도록 배치하고 싶습니다. 예를 들어서 n이 4인경우 다음과 같이 퀸을 배치하면 n개의 퀸은 programmers.co.kr 백트랙킹 #include #include using namespace std; int cnt; void n_queen(vector &vrtc, vector &dgnl_1, vector& dgnl_2, int n, int y) { // n퀸의 위치를 완성했을 때 if (y == n) { ++cnt; return; } for (int x = 0; x .. 2020. 7. 10.
[프로그래머스]연습문제 : 최고의 집합 (level 3) (c++) https://programmers.co.kr/learn/courses/30/lessons/12938 코딩테스트 연습 - 최고의 집합 자연수 n 개로 이루어진 중복 집합(multi set, 편의상 이후에는 집합으로 통칭) 중에 다음 두 조건을 만족하는 집합을 최고의 집합이라고 합니다. 각 원소의 합이 S가 되는 수의 집합 위 조건을 만족 programmers.co.kr #include #include using namespace std; vector solution(int n, int s) { // n개의 자연수로 s를 만들 수 없는 경우 if (n > s) { return { -1 }; } // 초기에 n개의 자연수는 각각 (s / n)의 값을 가짐 int qe = s / n; vector answer.. 2020. 7. 10.