title: "문자열 압축" category: 프로그래머스[Level-2] tags: [C++, JavaScript, 프로그래머스] date: "2021-01-22" 문제 링크 문자열 압축 C++ #include #include #include #include using namespace std; // length/2 개 단위까지 int solution(string s) { int answer = 0; answer = s.length(); for(int cut=1; cut
title: "프린터" category: 프로그래머스[Level-2] tags: [C++, JavaScript, 프로그래머스] date: "2021-01-21" 문제 링크 프린터 C++ #include #include #include #include using namespace std; int solution(vector priorities, int location) { int answer = 0; vector v; // 저장용 queue q; // 순서목록 for(int i=0; i { if (value[0] === location) { answer = index + 1; return true; } }); return answer; }
title: "124 나라의 숫자" category: 프로그래머스[Level-2] tags: [C++, JavaScript, 프로그래머스] date: "2021-01-21" 문제 링크 124 나라의 숫자 C++ #include #include #include using namespace std; string solution(int n) { string answer = ""; string oneTwoFour= "124"; while(n>0){ answer += oneTwoFour[(n-1)%3]; n = (n-1)/3; } reverse(answer.begin(), answer.end()); // 뒤집기 return answer; } JavaScript function solution(n) { var an..
title: "멀쩡한 사각형" category: 프로그래머스[Level-2] tags: [C++, JavaScript, 프로그래머스] date: "2021-01-21" 문제 링크 멀쩡한 사각형 C++ using namespace std; long long gcd(long long a, long long b){ if(a%b == 0) return b; return gcd(b, a%b); } long long solution(int w,int h) { long long answer = 1; answer = w*h - (w+h-gcd(w,h)); return answer; } JavaScript function solution(w, h) { var answer = 1; const gcd = (a, b) => ..
title: "스킬트리" category: 프로그래머스[Level-2] tags: [C++, JavaScript, 프로그래머스] date: "2021-01-21" 문제 링크 스킬트리 C++ #include #include using namespace std; int solution(string skill, vector skill_trees) { int answer = 0; for(string str: skill_trees){ string s = ""; for(char ch: str){ if(skill.find(ch) != string::npos) s += ch; } if(skill.find(s) == 0) answer++; } return answer; } JavaScript function soluti..
title: "다리를 지나는 트럭" category: 프로그래머스[Level-2] tags: [C++, JavaScript, 프로그래머스] date: "2021-01-21" 문제 링크 다리를 지나는 트럭 C++ #include #include #include using namespace std; int solution(int bridge_length, int weight, vector truck_weights) { int answer = 0; queue q; int sum = 0; for(auto truck: truck_weights){ while(sum > 0){ // 트럭이 다리에 있는 경우 if(q.size() == bridge_length){ // 트럭이 다리를 지나감 sum -= q.front(..
title: "기능개발" category: 프로그래머스[Level-2] tags: [C++, JavaScript, 프로그래머스] date: "2021-01-21" 문제 링크 기능개발 C++ #include #include #include using namespace std; vector solution(vector progresses, vector speeds) { vector answer; reverse(progresses.begin(), progresses.end()); // for. 스택으로 이용 reverse(speeds.begin(), speeds.end()); // for. 스택으로 이용 while(!progresses.empty()){ int count = 0; // 날짜 수 int tota..
title: "숫자의 표현" category: 프로그래머스[Level-2] tags: [C++, JavaScript, 프로그래머스] date: "2021-01-31" 문제 링크 숫자의 표현 C++ #include #include using namespace std; int solution(int n) { int answer = 1; // 자기 자신 int limit=(n%2)?(n+1)/2:n/2; int sum=0; int sub=1; // 1부터 빼기 for(int i=1; i=n){ while(sum>n) sum-=sub++; if(sum==n) answer++; } } return answer; } JavaScript function solution(n) { var answer = 1; // 자기..