https://programmers.co.kr/learn/courses/30/lessons/12928 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이과정 이 문제는 간단해 보이지만, 생각해야 될 것이 하나 있다. 바로 char 자료형은 1byte 자료형이며 표현할 수 있는 최대 정수 범위는 127이라는 것이다. 만약 'z' = 122인데 n = 25를 더하면 값은 147이므로 char 자료형의 범위를 벗어나게 된다. 그러므로 대문자처럼 문자형에 바로 n을 더해주면 틀리게 되는 것이다. 해결 방법은 int형을 선언해줘서 연산 결과 값을 저장해주고, 만약..
level1
https://school.programmers.co.kr/learn/courses/30/lessons/12925 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이과정 문자열을 숫자로 바꿔주는 가장 기본적인 문제다. 만약 int로 바꿔줘야 한다면 stoi함수를 쓰고, long long으로 바꿔줘야 한다면 stoll함수를 쓰면 된다. #include #include using namespace std; int solution(string s) { int answer = 0; answer = stoi(s); return answer; }
https://programmers.co.kr/learn/courses/30/lessons/12918 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이과정 여기서 실수할 수 있는 점은 숫자는 0부터 시작한다는 것이다! 1부터 시작하지 않도록 조심해야된다! 문자열 안에 있는 숫자들을 카운트 해주고, 문자열의 길이와 숫자 카운트한 것과 같으면 answer을 true로 바꿔준다. #include #include using namespace std; bool solution(string s) { bool answer = false; if(s.size() == ..
https://programmers.co.kr/learn/courses/30/lessons/12917 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이과정 문자열도 char형이 여러개 이어진 것이기 때문에 sort를 할 수 있다. rbegin()과 rend()는 내림차순을 한다는 것이다. 풀이1 #include #include #include using namespace std; string solution(string s) { string answer = ""; sort(s.rbegin(), s.rend()); answer = s; return ans..
https://programmers.co.kr/learn/courses/30/lessons/12916 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이과정 단순히 문자열 개수 세는 문제이다. #include #include using namespace std; bool solution(string s) { bool answer = true; int pcnt = 0, ycnt = 0; for(int i = 0; i < s.size(); i++){ if(s[i] == 'p' || s[i] == 'P') pcnt++; else if(s[i] == 'y' ||..
https://programmers.co.kr/learn/courses/30/lessons/12912 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이과정 두 정수 사이의 합만 구하면 되는 단순한 문제이다. 만약 a보다 b가 크게 되면 swap함수로 두 값을 바꿔주면 된다. 풀이1 #include #include using namespace std; long long solution(int a, int b) { long long answer = 0; if(a > b) swap(a, b); for(int i = a; i b) { int temp = a; ..
https://programmers.co.kr/learn/courses/30/lessons/68644 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이과정 이중 for문을 돌려 answer 벡터에 합들을 다 넣어준다. 오름차순으로 정렬하고 중복인 숫자는 erase함수로 제거해준다. 풀이1 #include #include #include using namespace std; vector solution(vector numbers) { vector answer; for(int i = 0; i < numbers.size() - 1; i++){ for(int ..
https://programmers.co.kr/learn/courses/30/lessons/87389 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이과정 answer을 1로 설정해주고 나머지가 1이 아니라면 answer을 + 1씩 해준다. 만약 나머지가 1이라면 무한 반복문을 탈출해준다. #include #include using namespace std; int solution(int n) { int answer = 1; while(1){ if(n % answer == 1) break; answer++; } return answer; }
https://programmers.co.kr/learn/courses/30/lessons/12903 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이과정 나누어 떨어진다면 answer 벡터에 넣고, 오름차순으로 정렬해주면 된다. 풀이1 #include #include #include using namespace std; vector solution(vector arr, int divisor) { vector answer; for(int i = 0; i < arr.size(); i++){ if(arr[i] % divisor == 0) answer.pus..
https://programmers.co.kr/learn/courses/30/lessons/12906 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이과정 중복을 제거하려면 벡터의 erase함수를 쓰면 된다. 풀이1 #include #include #include using namespace std; vector solution(vector arr) { vector answer; arr.erase(unique(arr.begin(), arr.end()), arr.end()); for(int i = 0; i < arr.size(); i++){ answer...