[프로그래머스/C++] Lv.1 문자열 내림차순으로 배치하기
문제 코드 #include #include std::string solution(std::string s) { std::string answer = ""; sort(s.begin(), s.end(), std::greater()); return s; } 문제 해설 - sort 와 greater() 를 이용해서 정렬시킨다.
문제 코드 #include #include std::string solution(std::string s) { std::string answer = ""; sort(s.begin(), s.end(), std::greater()); return s; } 문제 해설 - sort 와 greater() 를 이용해서 정렬시킨다.
문제 코드 #include using namespace std; long long solution(int price, int money, int count) { long long answer = 0; for (int i = 1; i money) answer -= money; else { answer = 0; } return answer; } // 다른 사람 풀이 /*typedef long long ll; long long solution(int price, int money, int count) { ll answer = (ll)(count * (count + 1) / 2) * price; return answer > money ? answer - money : 0; }*/ 문제 해설 - 가우스 공식을 이..
문제 코드 #include #include using namespace std; bool solution(string s) { const regex pattern("^(\\d{4}|\\d{6})$"); return regex_match(s, pattern); } // 다른 사람 풀이 /*bool solution(string s) { bool answer = true; for (int i = 0; i < s.size(); i++) { if (!isdigit(s[i])) answer = false; } return s.size() == 4 || s.size() == 6 ? answer : false; }*/ 문제 해설 - regex 를 이용해서 4자리 또는 6자리 숫자인지 검사 - 또는 isdigit을 이용..
문제 코드 #include #include #include #include using namespace std; vector solution(vector arr, int k) { vector answer; unordered_set us; for (int n : arr) { if (us.find(n) == us.end()) { us.insert(n); answer.emplace_back(n); } if (answer.size() == k) { break; } } while (answer.size() < k) { answer.emplace_back(-1); } return answer; } 문제 해설 -
문제 코드 #include #include #include using namespace std; vector solution(vector arr) { vector answer; int i = 0; while (i < arr.size()) { if (answer.empty()) { answer.emplace_back(arr[i++]); } else if (answer.back() != arr[i]) { answer.emplace_back(arr[i++]); } else { answer.pop_back(); i++; } } if (answer.empty()) { answer.emplace_back(-1); } return answer; } 문제 해설 -
문제 코드 #include #include #include using namespace std; vector solution(vector arr) { vector answer; for (int n : arr) { for (int i = 0; i < n; ++i) { answer.emplace_back(n); } } return answer; } 문제 해설 조건에 맞게 for문 사용