목록분류 전체보기 (370)
GitHubSeob

문제 https://school.programmers.co.kr/learn/courses/30/lessons/161989 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제풀이 롤러가 닿을 수 있는 범위를 알려주는 변수인 roller을 선언한다. section을 탐색하면서 roller값이 더 작다면 롤러를 옮겨야 하므로 roller값을 section + m - 1로 바꾸고 answer에 1을 더한다. 코드 #include #include using namespace std; int solution(int n, int m, vector section) { ..

문제 https://school.programmers.co.kr/learn/courses/30/lessons/136798 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제풀이 이중 for문을 이용해 약수를 구한다. 약수를 구하고 약수의 개수가 담긴 divisor벡터를 탐색하면서 limit를 넘긴 값이 있으면 power로 바꾼다. divisor벡터의 모든 값을 더하고 return 한다. 코드 #include #include using namespace std; int solution(int number, int limit, int power) { int ..

문제 https://school.programmers.co.kr/learn/courses/30/lessons/131128 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제풀이 X와 Y를 탐색하면서 숫자의 개수를 numX, numY 벡터에 저장한다. numX와 numY를 비교하면서 최솟값을 partner벡터에 넣는다. 이때, 0인 경우는 제외한다. 그다음 partner벡터를 내림차순으로 정렬한다. 비어있으면 -1을, 맨 앞이 0이라면 0을, 나머지 경우는 그대로 return 한다. 코드 #include #include #include using names..

문제 https://school.programmers.co.kr/learn/courses/30/lessons/133499 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제풀이 다른 분들과 다르게 지저분하게 풀었다. 문자열 배열을 앞에서부터 발음가능한 네 가지 발음을 비교하면서 같으면 2~3칸 뒤의 문자열과 비교하는 식으로 했다. 먼저 발음 가능한 네 발음을 사이즈 작은 순으로 정렬을 한다. idx을 1로 시작하고 idx-1, idx인 부분을 substr로 잘라 문자열에 저장한다. (s) s와 발음 가능한 네 발음을 비교하고, s가 사이즈가 작으면 idx..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/12951 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제풀이 소문자를 대문자로 변환해주는 toupper, 대문자를 소문자로 변환해주는 tolower을 사용했다. s[0]은 s[0]을 대문자로, 나머지 인덱스는 for문을 이용한다. s[idx - 1]이 공백이고, s[idx]가 공백이 아니면 s[idx]가 첫 문자이므로 toupper을 하여 대문자로, 그 외의 경우는 tolower을 이용해 소문자로 변환한다. 코드 #include #includ..

문제 https://school.programmers.co.kr/learn/courses/30/lessons/12939 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제풀이 문자열을 파싱 하는 istringstream을 이용해 풀었다. istr에서 공백 (' ')을 기준으로 문자열을 잘라 num에 저장한다. min_num에는 최솟값을, max_num에는 최댓값을 저장한다. 문제에 숫자 범위 조건이 안 나와있어 min_num에는 int의 최댓값인 2147483647, max_num에는 최솟값인 -2147483648으로 초기화했다. 마지막으로 answer에..

문제 https://school.programmers.co.kr/learn/courses/30/lessons/140108 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제풀이 start에 첫 글자를 저장한다. s를 탐색하면서 start와 같다면 X++, 다르다면 notX++을 한다. 만약 X가 0이 아닐 때, X와 notX가 같다면 answer++을 하고, 두 값을 초기화, start도 초기화한다. 반복문이 종료되었을 때, X가 0이 아니라면 남은 문자열이 있는 것이므로 answer++을 한다. 코드 #include #include using names..

문제 https://school.programmers.co.kr/learn/courses/30/lessons/160586 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제풀이 해당 문자를 작성하기 위한 최소 횟수를 구하기 위해, 알파벳 개수가 크기인 cnt벡터를 선언한다. 해당 문자가 없을 때는 -1을 출력해야 하기 때문에, 값들은 최대 횟수+1인 101로 모두 저장한다. 알파벳은 대문자로만 이루어져 있으므로, keymap을 탐색하면서 해당 문자열 - 'A'한 값과 기존 cnt값 중 작은 값을 cnt에 저장한다. targets을 탐색하면서 해당 문자열 ..

문제 https://school.programmers.co.kr/learn/courses/30/lessons/155652 코딩테스트 연습 - 둘만의 암호 두 문자열 s와 skip, 그리고 자연수 index가 주어질 때, 다음 규칙에 따라 문자열을 만들려 합니다. 암호의 규칙은 다음과 같습니다. 문자열 s의 각 알파벳을 index만큼 뒤의 알파벳으로 바꿔줍니다. i school.programmers.co.kr 문제풀이 alp에 알파벳을 먼저 저장해 준다. 다음 스킵을 탐색하면서, 겹치는 알파벳이 있으면 alp에서 삭제한다. 그다음 map을 이용해 index칸 뒤에 있는 알파벳을 저장한다. code['현재 알파벳'] = 'index칸 뒤 알파벳' s를 탐색하면서 code[s[idx]]의 값을 answer에 ..