코딩테스트/프로그래머스

문제 https://school.programmers.co.kr/learn/courses/30/lessons/131127 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 1. HashMap 사용. 원하는 제품과 수량을 put 원하는 제품의 총 개수 구함 => count HashMap map = new HashMap(); int count = 0; for(int i=0 ;i0){ count--; } map.put(discount[i+10], map.get(discount[i+10])-1); } if(count==0) answer++; } 전체 코드 im..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/12914 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 효진이는 1칸 또는 2칸을 뛰어서 이동할 수 있다. 효진이가 3번째 칸에 가려고 하는 경우의 수는 1번째 칸에서 2칸 뛰는 방법 1가지 2번째 칸에서 1칸 뛰는 방법 1가지 따라서, 3번째 칸까지는 1번째 칸까지 가는 방법의 수 + 2번째 칸까지 가는 방법의 수의 값과 같다. 다시, 4번째 칸에 가려고 하는 경우의 수는 3번째 칸에서 1칸 뛰는 방법 1가지 2번째 칸에서 2칸 뛰는 방법..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/12953 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 유클리드 호제법을 이용하여 순서대로 arr[i-1]과 arr[i]의 최소공배수를 구하기 arr[i-1]와 arr[i]의 최소 공배수를 arr[i]에 갱신 유클리드 호제법 2개 숫자의 최대 공약수를 구하는 알고리즘 자연수 a와 b에 대해 a를 b로 나눈 나머지 r이라고 하면, a와 b의 최대 공약수와 b와 r의 최대공약수는 같다. a를 b로 나눈 나머지 r을 구한 뒤, b를 r로 나..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/67257 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 요약 연산자 우선순위를 재정의 하여 주어진 수식을 계산. 재정의 된 우선순위를 가지고 계산한 값 중 가장 큰 값 리턴 풀이 0. expression에서 연산자와 숫자 분리 String number = ""; numList = new ArrayList(); operList = new ArrayList(); for(int i=0; i
https://school.programmers.co.kr/learn/courses/30/lessons/12981 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 0. 단어 기록 ArrayList를 선언해 앞서 불린 단어들을 저장한다. pre : 바로 앞순서에 불린 단어 ArrayList list = new ArrayList(); String pre = ""; 1. 끝말잇기 순서 사람 순서대로 for문을 돌렸다. 만약 마지막 사람 차례였다면 i를 -1로 바꿔주면 다음 for문에서 i++ 연산이 일어나므로 i는 0이 됨. for(int i=0; i=wo..
https://school.programmers.co.kr/learn/courses/30/lessons/12973 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 문자열의 길이가 백만이길래 고민을 좀 하고 들어갔다. 1. stack을 이용해서 맨 첫 문자를 넣어 둔 뒤, 인덱스 1부터 문자열 길이를 다 탐색 2. stack에 들어가 있는 문자와 문자열의 다음 문자와 비교 2-1. 같다면 스택에 있는 문자를 POP 2-2. 다르다면 스택에 해당 문자를 추가한다. 처음 코드 import java.util.*; class Solution { public i..
https://school.programmers.co.kr/learn/courses/30/lessons/86491?language=java 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 1. 직사각형의 명함의 정보가 있을 때, 긴 길이를 width, 짧은 길이를 height로 간주한다. int w = size[0]>size[1] ? size[0] : size[1]; int h = size[0]
https://school.programmers.co.kr/learn/courses/30/lessons/42885 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 무인도에 갇힌 사람들을 구명보트를 이용하여 구출하려고 합니다. 구명보트는 작아서 한 번에 최대 2명씩 밖에 탈 수 없고, 무게 제한도 있습니다. 예를 들어, 사람들의 몸무게가 [70kg, 50kg, 80kg, 50kg]이고 구명보트의 무게 제한이 100kg이라면 2번째 사람과 4번째 사람은 같이 탈 수 있지만 1번째 사람과 3번째 사람의 무게의 합은 150kg이므로 구명보트의 무게 제한..
https://school.programmers.co.kr/learn/courses/30/lessons/131701 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Lv2. 중에서도 쉬운 문제 내 풀이 1. 원래 배열 길이의 두 배의 길이 배열에 원소들 한 번 더 저장 2. 자료구조 HashSet을 사용해 중복저장을 피함 3. size 별로 차례대로 합을 구한 뒤 set에 저장 4. set의 size 리턴 import java.util.*; class Solution { public int solution(int[] elements) { int answer..
https://school.programmers.co.kr/learn/courses/30/lessons/92335 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 양의 정수 n이 주어집니다. 이 숫자를 k진수로 바꿨을 때, 변환된 수 안에 아래 조건에 맞는 소수(Prime number)가 몇 개인지 알아보려 합니다. 0P0처럼 소수 양쪽에 0이 있는 경우 P0처럼 소수 오른쪽에만 0이 있고 왼쪽에는 아무것도 없는 경우 0P처럼 소수 왼쪽에만 0이 있고 오른쪽에는 아무것도 없는 경우 P처럼 소수 양쪽에 아무것도 없는 경우 단, P는 각 자릿수에 0을 포함하지..
짛
'코딩테스트/프로그래머스' 카테고리의 글 목록