title: "두 정수 사이의 합" category: 프로그래머스[Level-1] tags: [C++, JavaScript, 프로그래머스] date: "2021-01-19" 문제 링크 두 정수 사이의 합 C++ #include #include using namespace std; long long solution(int a, int b) { long long answer = 0; if(a > b){ // a가 크면 for(int i=b; i
title: "같은 숫자는 싫어" category: 프로그래머스[Level-1] tags: [C++, JavaScript, 프로그래머스] date: "2021-01-19" 문제 링크 같은 숫자는 싫어 C++ #include #include using namespace std; vector solution(vector arr) { vector answer; for(auto e: arr){ if(answer.empty() || answer.back() != e){ // 비어있거나 마지막 수가 다를 경우 push answer.push_back(e); } } return answer; } JavaScript function solution(arr) { var answer = []; arr.forEach((val..
title: "나누어 떨어지는 숫자 배열" category: 프로그래머스[Level-1] tags: [C++, JavaScript, 프로그래머스] date: "2021-01-19" 문제 링크 나누어 떨어지는 숫자 배열 C++ #include #include #include using namespace std; vector solution(vector arr, int divisor) { vector answer; for(auto e: arr){ if(e%divisor==0){ // 나누어 떨어질 경우 push answer.push_back(e); } } if(answer.empty()) answer.push_back(-1); // -1 push else sort(answer.begin(), answer.e..
title: "가운데 글자 가져오기" category: 프로그래머스[Level-1] tags: [C++, JavaScript, 프로그래머스] date: "2021-01-19" 문제 링크 가운데 글자 가져오기 C++ #include #include using namespace std; string solution(string s) { string answer = ""; int center = s.length()/2; if(s.length()%2==0){ // 길이가 짝수일 때 answer = s.substr(center-1, 2); } else{ // 길이가 홀수일 때 answer = s[center]; } return answer; } JavaScript function solution(s) { var ..
title: "3진법 뒤집기" category: 프로그래머스[Level-1] tags: [C++, JavaScript, 프로그래머스] date: "2021-01-19" 문제 링크 3진법 뒤집기 C++ #include #include #include #include using namespace std; int solution(int n) { int answer = 0; vector v; // 3진법 구하기 while(true){ if(n < 1) break; v.push_back(n%3); n = n/3; } // 10진법으로 바꾸기 for(int i=0; i { answer += value * Math.pow(3, array.length - index - 1); }); return answer; }
title: "2016년" category: 프로그래머스[Level-1] tags: [C++, JavaScript, 프로그래머스] date: "2021-01-19" 문제 링크 2016년 C++ #include #include using namespace std; // 윤년: 366일 string solution(int a, int b) { string answer = ""; string days[7] = {"SUN", "MON", "TUE", "WED", "THU", "FRI", "SAT"}; int month[12] = {31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; int day = -1; // 처음은 1일 이므로 하루 빼기 for(int i=0; i
title: "쿼드압축 후 개수 세기" category: 프로그래머스[Level-2] tags: [C++, JavaScript, 프로그래머스] date: "2021-01-29" 문제 링크 쿼드압축 후 개수 세기 C++ #include #include using namespace std; int countZero, countOne; // 각각 0과 1의 개수 void divideGo(vector& arr, int row, int col, int size){ int count=0; for(int x=row; x