title: "하노이의 탑" category: 프로그래머스[Level-3] tags: [C++, JavaScript, 프로그래머스] date: "2021-02-24" 문제 링크 하노이의 탑 C++ #include #include #include using namespace std; // from --> by --> to void move(int num, int from, int to, int by, vector& answer){ vector v={from, to}; if(num == 1) answer.push_back(v); // 1개 남았을 때, push else{ // from --> to --> by move(num-1, from, by, to, answer); // push answer.push_..
title: "셔틀버스" category: 프로그래머스[Level-3] tags: [C++, JavaScript, 프로그래머스] date: "2021-02-27" 문제 링크 셔틀버스 C++ #include #include #include #include using namespace std; int toInt(string time){ int hour = stoi(time.substr(0, 2)); int min = stoi(time.substr(3, 2)); return hour*60 + min; } string toStr(int time){ string ret=""; int hour = time/60; ret += hour { const hour = +time.slice(0, 2); const min =..
title: "블록 이동하기" category: 프로그래머스[Level-3] tags: [C++, JavaScript, 프로그래머스] date: "2021-02-22" 문제 링크 블록 이동하기 C++ #include #include #include #include using namespace std; // 우(0), 하(1), 좌(2), 상(3) int dirRow[]={0, 1, 0, -1}; int dirCol[]={1, 0, -1, 0}; struct Robot{ int row, col, dir, time; Robot(int _row, int _col, int _dir, int _time){ row=_row; col=_col; dir=_dir; time=_time; } }; bool check_vi..
title: "길 찾기 게임" category: 프로그래머스[Level-3] tags: [C++, JavaScript, 프로그래머스] date: "2021-02-22" 문제 링크 길 찾기 게임 C++ #include #include #include #include using namespace std; struct Node{ int x, y, n; Node* left; Node* right; Node(int _x, int _y, int _n){ x = _x; y = _y; n = _n; left = nullptr; right = nullptr; } }; bool cmp(Node a, Node b){ if(a.y==b.y) return a.x < b.x; // x는 작은 것부터 else return a.y ..
title: "스타 수열" category: 프로그래머스[Level-3] tags: [C++, JavaScript, 프로그래머스] date: "2021-02-21" 문제 링크 스타 수열 C++ #include #include #include #include using namespace std; int solution(vector a) { int answer = 0; map num_count; for(int e: a) num_count[e]++; // 중복 숫자 갯수 for(auto p: num_count){ if(p.second
title: "경주로 건설" category: 프로그래머스[Level-3] tags: [C++, JavaScript, 프로그래머스] date: "2021-02-20" 문제 링크 경주로 건설 C++ #include #include #include #include using namespace std; // 우(0), 하(1), 좌(2), 상(3) int LUT_ROW[]={0, 1, 0, -1}; int LUT_COL[]={1, 0, -1, 0}; typedef struct Car{ int row, col, dir, cost; Car(int _row, int _col, int _dir, int _cost){ row=_row; col=_col; dir=_dir; cost=_cost; } }Car; bool c..
title: "기지국 설치" category: 프로그래머스[Level-3] tags: [C++, JavaScript, 프로그래머스] date: "2021-02-20" 문제 링크 기지국 설치 C++ #include #include using namespace std; int solution(int n, vector stations, int w) { int answer = 0; int from=1; // ~부터 int range=2*w+1; // 범위 for(int station: stations){ int to=station-w; // ~전까지 if(to>from){ int count=to-from; // 전파 닿지 않는 개수 // 기지국 개수 추가 answer += count/range; answer +..
title: "숫자 게임" category: 프로그래머스[Level-3] tags: [C++, JavaScript, 프로그래머스] date: "2021-02-16" 문제 링크 숫자 게임 C++ #include #include #include using namespace std; int solution(vector A, vector B) { int answer = 0; // 오름차순 정렬 stable_sort(A.begin(), A.end()); stable_sort(B.begin(), B.end()); int indexA=0; int indexB=0; while(indexB a - b); B.sort((a, b) => a - b); let idxA = 0; B.forEach((b) => { if (A[i..