본문 바로가기

Algorithm350

[프로그래머스]연습문제 : 줄 서는 방법 (level 3) (c++) https://programmers.co.kr/learn/courses/30/lessons/12936 코딩테스트 연습 - 줄 서는 방법 n명의 사람이 일렬로 줄을 서고 있습니다. n명의 사람들에게는 각각 1번부터 n번까지 번호가 매겨져 있습니다. n명이 사람을 줄을 서는 방법은 여러가지 방법이 있습니다. 예를 들어서 3명의 사람 programmers.co.kr #include #include using namespace std; long long make_factorial(vector& fact, long long num) { if (num 0) { return fact[num]; } return fact[num] = make_factoria.. 2020. 7. 10.
[프로그래머스]2019 카카오 개발자 겨울 인턴십 : 불량 사용자 (level 3)(c++) https://programmers.co.kr/learn/courses/30/lessons/64064?language=cpp 코딩테스트 연습 - 불량 사용자 개발팀 내에서 이벤트 개발을 담당하고 있는 무지는 최근 진행된 카카오이모티콘 이벤트에 비정상적인 방법으로 당첨을 시도한 응모자들을 발견하였습니다. 이런 응모자들을 따로 모아 불량 �� programmers.co.kr dfs + 백트랙킹 #include #include #include using namespace std; set com_set; void dfs(vector &cands, set &pick_ban, int depth) { // 종료조건 : depth가 제재 아이디목록 길이일 때 if (depth == cands.size()) { /* 제.. 2020. 7. 9.
[프로그래머스]Summer/Winter Coding(~2018) : 방문 길이 (level 3) (c++) https://programmers.co.kr/learn/courses/30/lessons/49994 코딩테스트 연습 - 방문 길이 programmers.co.kr #include #include #include using namespace std; const int LEN = 11; struct pos { int y, x; }; // 현재위치에서 명령어대로 이동하여 다음 위치 구하기 pos get_next_pos(pos p, char c) { int ny = p.y; int nx = p.x; if (c == 'U') { ny -= 1; } else if (c == 'D') { ny += 1; } else if (c == 'R') { nx += 1; } else if (c == 'L') { nx -= 1.. 2020. 7. 9.
[프로그래머스]연습문제 : 하노이의 탑 (level 3) (c++) https://programmers.co.kr/learn/courses/30/lessons/12946 코딩테스트 연습 - 하노이의 탑 하노이 탑(Tower of Hanoi)은 퍼즐의 일종입니다. 세 개의 기둥과 이 기동에 꽂을 수 있는 크기가 다양한 원판들이 있고, 퍼즐을 시작하기 전에는 한 기둥에 원판들이 작은 것이 위에 있도록 순서대�� programmers.co.kr 분할 정복 #include #include using namespace std; void move_tower(vector& answer, int n, int from, int to) { if (n == 0) { return; } // 1 ~ N -1 탑 이동 : from -> mid (to 경유) move_tower(answer, n .. 2020. 7. 9.