본문 바로가기

Programmers

(14)
[JAVA] Lv.1 약수의 개수와 덧셈 https://school.programmers.co.kr/learn/courses/30/lessons/77884 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 1. 1은 약수의 개수가 1개이므로 sum에 -1을 한 후 넘어가줌 2. 2부터는 약수의 개수가 최소 2이므로 cnt =2 3. 약수는 자기 자신을 제외하면 숫자를 2로 나눈 값보다 작기 때문에 숫자/2까지만 for문을 돌리도록 함 class Solution { public int solution(int left, int right) { int sum = 0; for (int i = left..
[JAVA] Lv.1 명예의 전당 (1) https://school.programmers.co.kr/learn/courses/30/lessons/138477 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 매일 새로운 점수가 발표될 때마다 자리가 k개인 명예의 전당에 점수들이 내림차순으로 정렬되어 발표됩니다 발표된 명예의 전당의 최하 점수를 배열 형태로 반환하는 문제입니다 풀이 1. score을 리스트에 추가하여 내림차순 정렬 2. 리스트의 마지막 값을 배열에 저장 3. 리스트의 크기가 k를 넘을 경우 리스트의 기존 마지막 값(명예의 전당에서 밀려난 점수)을 삭제 한 후에 다시 마지막 값을 ..
[JAVA] Lv.1 추억 점수 https://school.programmers.co.kr/learn/courses/30/lessons/176963 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 photo 배열의 각 원소들(사진 한 장에 등장한 사람들) 중 name의 원소(추억이 있는 사람들)에 해당하는 값이 있다면 그 원소에 대응하는 점수를 더하여 반환하는 문제입니다 풀이 1. list를 선언하여 name의 원소들을 넣어줌 2. contains() 메소드로 photo 배열들의 각 원소가 list에 포함되는지 확인 3. 포함되면 list에서의 해당 원소 인덱스를 찾고 yearnin..
[JAVA] Lv.1 문자열 내 마음대로 정렬하기 https://school.programmers.co.kr/learn/courses/30/lessons/12915 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 strings의 원소들의 각 n번째 글자를 비교하여 알파벳 순서대로 정렬하여 반환하는 문제입니다 단, n번째 글자가 같을 경우 해당하는 두 원소를 사전 순으로 정렬해야 합니다 풀이 1. strings 배열 두 문자열의 n번째 글자의 아스키코드 값을 비교 2. 뒷 글자가 더 작다면 두 배열의 위치를 바꾼다 3. 뒷 글자와 동일하면 n번째 이후 글자들을 정렬 후 배열의 위치를 바꿈 import ..
[JAVA] Lv.1 [1차] 비밀지도 https://school.programmers.co.kr/learn/courses/30/lessons/17681 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 arr1과 arr2에 주어진 각 정수 값들을 n비트 2진수로 변환 동일한 인덱스끼리 논리합 연산을 수행한 후 0은 " ", 1은 "#"으로 바꿔 문자열 배열 반환 풀이 1. arr1과 arr2의 같은 인덱스 값끼리 비교하여 논리합 연산 수행 2. 결과가 0이면 answer의 각 인덱스에 " ", 1이면 "#" 삽입 class Solution { public String[] solution(i..
[JAVA] Lv.1 콜라 문제 https://school.programmers.co.kr/learn/courses/30/lessons/132267 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 1. 새로 얻게 되는 콜라 개수 = 총 빈 병 개수 / 교환 기준 개수 2. 현재 갖고 있는 빈 병 개수 = 교환하고 남은 빈 병 개수 + 새로 얻은 콜라 개수 문제에서 주어진 예시는 모두 b가 1로 주어졌지만 2 이상인 경우를 생각해야 한다 class Solution { public int solution(int a, int b, int n) { int answer = 0; while (..
[JAVA] Lv.1 수박수박수박수박수박수? https://school.programmers.co.kr/learn/courses/30/lessons/12922 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 n = 3일 때 수박 * 1 + 수, n = 4일 때 수박 * 2, n = 5일 때 수박 * 2 + 수이므로 1. n / 2 만큼 문자열에 "수박"을 반복해 더한다 2. n이 홀수인 경우 "수"를 더한다 class Solution { public String solution(int n) { String answer = ""; for (int i=0; i
[JAVA] Lv.1 없는 숫자 더하기 https://school.programmers.co.kr/learn/courses/30/lessons/12935 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 원소 삭제에 용이한 List를 사용했습니다 1. List에 배열 arr의 모든 원소를 삽입한다 2. 배열 arr를 오름차순으로 정렬하여 최솟값을 찾는다 3. remove 함수를 이용하여 최솟값을 삭제한다 4. 리스트를 배열로 변환하여 반환한다 import java.util.*; class Solution { public int[] solution(int[] arr) { //배열 길이가 1일 ..