Algorithm 170

[프로그래머스/C++] 같은 숫자는 싫어

배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하여 반환하는 문제 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 #include #include using namespace std; vector solution(vector arr) { vector answer; int cur = 0; answer.push_back(arr[0]); for (int i = 1; i unique - C++ Reference function template std::unique equality (1)template ForwardIterator unique (ForwardIterator first, ForwardIterator last); predicate (..

[백준 알고리즘/C++/그리디] 2891 카약과 강풍

강풍이 불어 카약이 부숴졌다고 한다 여분의 카약을 들고온 팀이 바로 앞, 뒤 팀에게만 카약을 빌려줄 건데 준비한 카약도 부숴지고 빌리지도 못한 팀이 몇 팀인지 출력하는 문제 프로그래머스의 체육복과 아주아주 비슷한 문제다 그냥 주어만 바뀜 카약이 하나면 빌려줄 수 없다는 조건을 못봐서 한 번 틀렸다,, 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 #include #include using namespace std; int main() { ios_base::sync_with_stdio(0); cin.tie(0); int n, s, r; vector arr(11, 1); cin >> n >> s..

Algorithm/BOJ 2021.02.15

[백준 알고리즘/C++/그리디] 15903 카드 합체 놀이

n장의 카드 중 x번째 카드와 y번째 카드를 골라 더한 후 x, y에 덮어 씌운다 이걸 m번 반복한 뒤 모든 카드를 합했을 때 나올 수 있는 최솟값을 구하는 문제 그냥 착실히 더해주면 되는 문제 123456789101112131415161718192021222324252627282930#include #include #include using namespace std; int main() { ios_base::sync_with_stdio(0); cin.tie(0); int n, m; long long res = 0; vector v; long long temp; cin >> n >> m; while (n--) { cin >> temp; v.push_back(temp); } while (m--) { sor..

Algorithm/BOJ 2021.02.15

[프로그래머스/C++] 3진법 뒤집기

자연수 n이 주어졌을 때, 3진수로 만들고 - 뒤집고 - 다시 10진수로 바꿔서 반환하는 문제 12345678910111213141516171819202122#include #include using namespace std; int solution(int n) { int answer = 0; vector v; while (n / 3 != 0) { v.push_back(n % 3); n = n / 3; } v.push_back(n); int temp = 1; for (int i = v.size() - 1; i >= 0; i--, temp *= 3) { answer += v[i] * temp; } return answer;}Colored by Color Scriptercs 나만.. 3진수로 어캐 만들지....

[프로그래머스/C++] 가운데 글자 가져오기

문자열을 입력받았을 때, 가운데 문자를 반환하는 문제 짝수면 가운데 두 글자를 반환하면 된다 뭔가 더 멋있는 방법이 있겠지만 그냥 풀었다 1234567891011121314151617#include #include using namespace std; string solution(string s) { string answer = ""; if (s.length() % 2 == 1) answer = s[s.length() / 2]; else { answer = s[s.length() / 2 - 1]; answer += s[s.length() / 2]; } return answer;}Colored by Color Scriptercs