Programmers Review

https://school.programmers.co.kr/learn/courses/30/lessons/12913 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 이 문제는 제귀를 사용한 반복으로 해결할 수 없다. 이유는 돌아가는 상황으로 인해 O(N^2)이 일어날 수 있기 때문이다. 따라서 dp를 사용해서 해결할 수 있다.초기 dp배열의 0번째 행 위치에 land의 0번째 행의 4개 요소를 집어 넣는다. 이후 land배열을 1번째 행부터 순회를 시작한다.단, 0번째 행의 최대 요소를 찾아야한다. 이때 1번째 행에서 선택한 열은 최대 값을 계산하는데 사용하지 ..
https://school.programmers.co.kr/learn/courses/30/lessons/12951# 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 문자열을 처음부터 끝까지 읽으며 공백을 기준으로 자른다.이때 공백이 연속으로 나올 수 있으므로 temp를 사용해 비어있다면 answer에 더하지 않는다.또한 문자열의 첫글자를 대문자로 바꿔야하는데 숫자인 경우와 원래 대문자인 경우 원래 글자를 유지한다.문자열의 두번째 글자부터 대문자는 소문자로 바꾸고, 소문자는 그대로 유지한다. #include #include #include using namesp..
https://school.programmers.co.kr/learn/courses/30/lessons/12936 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr n개의 숫자 중 k번째에 해당하는 줄서는 방법을 찾아야한다.초기 첫번째 줄서는 방법으로 배열을 채운다. 이때 k가 1인 경우 줄세운 배열을 그대로 반환한다. 이 후 줄세우는 방법의 경우의 수를 알기 위해 dp를 사용해 팩토리얼 연산을 진행한다. 1. 4(n)의 값을 사용하면 4(n)개의 숫자 중 앞에 올 숫자. div  = 6 / (4!/4)  == 1mod = 6 % (4!/4) == 0arr의 d..
https://school.programmers.co.kr/learn/courses/30/lessons/12914 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 이 문제는 dp를 사용하면 해결할 수 있다.n칸을 뛸 수 있는 경우의 수를 구하는 문제이므로1칸을 뛸 수 있는 경우, 2칸을 뛸 수 있는 경우, 3칸을 뛸 수 있는 경우를 구하면각각 1, 2, 3이 된다. 즉, dp[3] = dp[1] + dp[2]가 성립하는 것을 알 수 있다.또한, 다른 방법으로 점화식을 구한다면 3칸을 뛸 수 있는 경우는 1칸과 2칸을 반드시 거쳐야하므로 각 경우를 더하면 알 수..
https://school.programmers.co.kr/learn/courses/30/lessons/12924 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 숫자의 표현은 연속된 숫자로 이루어져야 한다.따라서 현재 숫자인 j를 1씩 올려가며 n값에 해당하면 answer값을 늘린다.이때 합이 n보다 크면 반복을 멈춰 최악의 경우를 벗어나게 하면 해결가능 #include #include using namespace std;int solution(int n) { int answer = 0; for(int i = 1;i n) break; ..
https://school.programmers.co.kr/learn/courses/30/lessons/12909 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 이 문제는 스택을 사용하면 해결할 수 있다.문자열의 끝이 ')'인 경우 스택에 삽입한다.혹은 '('인 경우 스택을 확인한다. 만약 스택이 비어있다면 올바르지 않은 괄호로 판단한다.스택이 비어있지 않은경우 스택의 top이 ')'인지 확인한다. 만약 ')'이 아니면 올바르지 않은 괄호로 판단한다. 문자열을 모두 순회한 후 스택이 비어있지 않다면 올바르지 않는 괄호로 판단한다. #include#includ..
https://school.programmers.co.kr/learn/courses/30/lessons/12911 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 이 문제는 2진수로 변환할때 1의 개수를 찾으면 해결할 수 있다.처음 n값이 주어졌을 때의 값을 2진수로 변환하며 1의 개수를 찾는다.그 후 n값을 1씩 증가시키며 2진수로 변환했을 때 1의 개수가 값은 값을 찾는다.그러면 이 값이 가장 작은 1의 개수가 같은 값이 된다. #include #include #include using namespace std;int calc(int n){ int c..
https://school.programmers.co.kr/learn/courses/30/lessons/1829# 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr DFS나 BFS를 사용하면 쉽게 해결할 수 있는 문제0이 아닌 값이 나오거나 방문한 적이 없는 곳인 경우 새로운 영역을 발견한 것또한 BFS나 DFS를 수행 한 후 방문한 블록의 수가 가장 큰 것이 최대 크기의 영역 #include #include using namespace std;int M, N;bool visited[101][101] = {false, };int dy[] = {-1, 1, 0, ..
hanseongbugi
'Programmers Review' 카테고리의 글 목록 (5 Page)