title: "예상 대진표" category: 프로그래머스[Level-2] tags: [C++, JavaScript, 프로그래머스] date: "2021-02-01" 문제 링크 예상 대진표 C++ #include #include using namespace std; int solution(int n, int a, int b) { int answer = 0; while(abs(a-b)>=1){ answer++; a=a&1?(a+1)>>1:a>>1; b=b&1?(b+1)>>1:b>>1; } return answer; } JavaScript function solution(n, a, b) { var answer = 0; while (Math.abs(a - b) >= 1) { answer++; a = a & 1..
title: "영어 끝말잇기" category: 프로그래머스[Level-2] tags: [C++, JavaScript, 프로그래머스] date: "2021-02-01" 문제 링크 영어 끝말잇기 C++ #include #include #include #include using namespace std; vector solution(int n, vector words) { vector answer(2, 0); set dict; // 중복 제거 int index=1; int times=1; char back=words.front().front(); for(string word: words){ if(dict.count(word)==1||word.front()!=back){ // 이전에 말하거나 끝말잇기가 아닐 ..
title: "점프와 순간 이동" category: 프로그래머스[Level-2] tags: [C++, JavaScript, 프로그래머스] date: "2021-02-01" 문제 링크 점프와 순간 이동 C++ #include using namespace std; int solution(int n) { int ans = 0; while(n>0){ if(n&1) ans++; n>>=1; } return ans; } JavaScript function solution(n) { var ans = 0; while (n > 0) { if (n & 1) ans++; n >>>= 1; } return ans; }
title: "소수 만들기" category: 프로그래머스[Level-2] tags: [C++, JavaScript, 프로그래머스] date: "2021-02-01" 문제 링크 소수 만들기 C++ #include #include #include #include #include using namespace std; int solution(vector nums) { int answer = 0; string condi(nums.size(), '1'); condi.replace(0, 3, "000"); do{ // 조합 int sum=0; for(int i=0; i
title: "짝지어 제거하기" category: 프로그래머스[Level-2] tags: [C++, JavaScript, 프로그래머스] date: "2021-02-01" 문제 링크 짝지어 제거하기 C++ #include #include using namespace std; int solution(string s) { int answer = 0; string str=""; str+=s[0]; for(int i=1; i
title: "N개의 최소공배수" category: 프로그래머스[Level-2] tags: [C++, JavaScript, 프로그래머스] date: "2021-02-01" 문제 링크 N개의 최소공배수 C++ #include #include #include using namespace std; int gcd(int a, int b){ // 최대공약수 if(a%b==0) return b; else return gcd(b, a%b); } int lcm(int a, int b){ // 최소공배수 return a*b/gcd(a, b); } int solution(vector arr) { int answer = 1; for(int num: arr){ answer=lcm(answer, num); } return an..
title: "JadenCase 문자열 만들기" category: 프로그래머스[Level-2] tags: [C++, JavaScript, 프로그래머스] date: "2021-02-01" 문제 링크 JadenCase 문자열 만들기 C++ #include #include using namespace std; string solution(string s) { string answer = ""; answer+=toupper(s[0]); // 처음 대문자(공백이면 공백) for(int i=1; i { return val.replace(/[a-z]/, (v, i) => { if (i === 0) return v.toUpperCase(); else return v; }); }) .join(" "); return an..
title: "최대공약수와 최소공배수" category: 프로그래머스[Level-1] tags: [C++, JavaScript, 프로그래머스] date: "2021-01-20" 문제 링크 최대공약수와 최소공배수 C++ #include #include using namespace std; int func(int a, int b){ if(a % b == 0) return b; return func(b, a % b); // 나누어떨어질 때까지 재귀 } vector solution(int n, int m) { vector answer; answer.push_back(func(n, m)); // 최대공약수 answer.push_back(n*m/answer[0]); // 최소공배수 return answer; } J..