본문 바로가기

Algorithm/프로그래머스139

[프로그래머스]연습문제 : JadenCase 문자열 만들기(level 2)(c++) https://programmers.co.kr/learn/courses/30/lessons/12951 코딩테스트 연습 - JadenCase 문자열 만들기 JadenCase란 모든 단어의 첫 문자가 대문자이고, 그 외의 알파벳은 소문자인 문자열입니다. 문자열 s가 주어졌을 때, s를 JadenCase로 바꾼 문자열을 리턴하는 함수, solution을 완성해주세요. 제한 조건 programmers.co.kr #include #include using namespace std; string solution(string s) { for (int i = 0; i < s.size(); ++i) { // 맨 앞이거나 공백 뒤의 첫 글자는 대문자 if (i == 0 || s[i - 1] == ' ') { s[i] = .. 2020. 5. 20.
[프로그래머스]2017 팁스타운 : 짝지어 제거하기(level 2)(c++) https://programmers.co.kr/learn/courses/30/lessons/12973 코딩테스트 연습 - 짝지어 제거하기 짝지어 제거하기는, 알파벳 소문자로 이루어진 문자열을 가지고 시작합니다. 먼저 문자열에서 같은 알파벳이 2개 붙어 있는 짝을 찾습니다. 그다음, 그 둘을 제거한 뒤, 앞뒤로 문자열을 이어 붙 programmers.co.kr #include #include using namespace std; int solution(string s) { stack stack; for (int i = 0; i < s.size(); ++i) { // 스택이 비어있으면 push if (stack.empty()) { stack.push(s[i]); } else { // 스택의 top과 현재 문.. 2020. 5. 20.
[프로그래머스]연습문제 : 땅따먹기(level 2)(c++) https://programmers.co.kr/learn/courses/30/lessons/12913 코딩테스트 연습 - 땅따먹기 땅따먹기 게임을 하려고 합니다. 땅따먹기 게임의 땅(land)은 총 N행 4열로 이루어져 있고, 모든 칸에는 점수가 쓰여 있습니다. 1행부터 땅을 밟으며 한 행씩 내려올 때, 각 행의 4칸 중 한 칸만 밟�� programmers.co.kr #include #include #include using namespace std; const int MAX_ROW = 100000; const int MAX_COLUMN = 4; int dp[MAX_ROW + 1][MAX_COLUMN]; // 주어진 배열에서 한 인덱스를 제외하고 나머지 값 중 최대값 구하기 int get_max_exc.. 2020. 5. 20.
[프로그래머스]연습문제 : 다음 큰 숫자(level 2)(c++) https://programmers.co.kr/learn/courses/30/lessons/12911 코딩테스트 연습 - 다음 큰 숫자 자연수 n이 주어졌을 때, n의 다음 큰 숫자는 다음과 같이 정의 합니다. 조건 1. n의 다음 큰 숫자는 n보다 큰 자연수 입니다. 조건 2. n의 다음 큰 숫자와 n은 2진수로 변환했을 때 1의 갯수가 같습니 programmers.co.kr #include #include using namespace std; int get_1_count(int n) { int cnt = 0; while (n) { if (n % 2 == 1) { ++cnt; } n /= 2; } return cnt; } int solution(int n) { // input값이 2진수일때 1의 개수 .. 2020. 5. 19.