일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Til
- join
- 혼공파
- 코테
- 안드로이드
- groupby
- 카카오코테
- 혼공챌린지
- 코틀린
- 정처기
- 자료구조
- MySQL
- 알고리즘
- Android
- doitandroid
- CS
- 프로그래머스
- 오블완
- 기술면접
- 혼공단
- Kotlin
- java
- 인프런
- SQL
- 자바
- 안드로이드스튜디오
- 티스토리챌린지
- 스터디
- 정보처리기사
- select
- Today
- Total
목록프로그래머스 (118)
Welcome! Everything is fine.
보호되어 있는 글입니다.
📌 문제 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr📌 유클리드 호제법을 이용해 최대공약수(GCD) 구하기이 문제를 풀기 전에 먼저 유클리드 호제법을 배우면 좋다. 유클리드 호제법이란 최대공약수(GCD, Greatest Common Divisor)를 찾는 효율적인 알고리즘이다. 유클리드 호제법은 두 정수 a와 b(단, a > b)의 최대공약수를 구할 때, 다음과 같은 사실을 이용한다.GCD(a, b) = GCD(b, a % b)이 과정을 나머지가 0이 될 때까지 반복하며, 나머지가 0이 되면 그때의 b가 두 수의 최대 공약수가 된다.유클리드 호제법을 ..
📌 문제 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr📌 풀이참가자 명단에는 있으나 완주자 명단에는 없는 선수의 이름을 반환하는 문제이다. 주의할 점은 참가자 중에 동명이인이 있을 수 있다는 점이다. 내가 작성한 풀이의 대략적인 흐름은 다음과 같다.참가자 배열을 돌며 HashMap에 형태로 참가자들의 정보를 저장한다.완주자 배열을 돌며 HashMap에 저장된 key와 같은 이름이 나올 경우해당 이름이 1개인 경우, 해당 이름으로 된 key를 삭제한다.해당 이름이 2개 이상인 경우(동명이인이 있을 경우), 해당 이름의 인원수를 1 감소시킨다.위 과정을 거..
📌 문제 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr📌 풀이문자열을 순회하며 x와 x가 아닌 다른 글자들이 나온 횟수가 같아질때 문자열을 분리한 후, 그 개수를 반환하는 문제이다. 우선 x가 나온 횟수를 저장할 변수 count와 x가 아닌 다른 글자들이 나온 횟수를 저장할 변수 other를 만들었다. 또한 문자열 s의 첫 번째 문자를 char형 변수 c에 저장하였다. 문자열 s의 길이만큼 for문을 돌며 count와 other가 같을 경우 answer를 1증가시키고, c에 다음 문자를 넣는다. c와 같은 문자가 나오면 count를 1증가, 다른 문자가 ..
📌 문제 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr📌 문제종류별 가장 큰 물고기와 그 길이를 알아내기 위해 서브쿼리를 사용하였다. 서브 쿼리..어떨땐 잘 풀고 어떨땐 헷갈려서 미치겠다...! SELECT A.ID, B.FISH_NAME, A.LENGTHFROM FISH_INFO A JOIN FISH_NAME_INFO B ON A.FISH_TYPE = B.FISH_TYPEWHERE (A.FISH_TYPE, A.LENGTH) IN (SELECT FISH_TYPE, MAX(LENGTH), FROM FISH_INFO, GROUP BY FISH_TYPE)O..
📌 문제 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr📌 정답처음에는 WHERE절에서 평균 길이에 대한 조건을 걸었다가 틀렸는데, 집계함수는 HAVING절에서 작성해야 한다는 것이 생각났다. 따라서 HAVING절에 AVG()로 LENGTH의 평균을 구하는데, LENGTH가 NULL일 경우 10cm로 취급해서 평균을 내야하므로 IFNULL()을 이용하여 NULL일 경우 갖게되는 값을 지정해주었다.SELECT COUNT(ID) AS FISH_COUNT, MAX(LENGTH) AS MAX_LENGTH, FISH_TYPEFROM FISH_INFOGROUP BY ..
📌 문제 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr📌 정답ITEM_INFO와 ITEM_TREE를 JOIN하여 문제를 풀었다. WHERE절에서는 PARENT_ITEM_ID 중 서브쿼리로 RARITY가 'RARE'인 ITEM_ID가 있을 때를 조건으로 두었다.SELECT ITEM_ID, ITEM_NAME, RARITYFROM ITEM_INFO JOIN ITEM_TREE USING(ITEM_ID)WHERE PARENT_ITEM_ID IN (SELECT ITEM_ID FROM ITEM_INFO JOIN ITEM_TR..
📌 문제 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr📌정답처음에는 까다로워 보이는 문제였지만 차근차근 작성하면 어렵지 않은 문제였다. 먼저 EMP_NO을 기준으로 HR_EMPLOYEES 테이블과 HR_GRADE 테이블을 JOIN하고, HR_GRADE 테이블의 EMP_NO을 기준으로 GROUP BY 하였다. SCORE의 평균으로 구하려면 SCORE 컬럼을 가지고 있어야하기 때문이다. 그리고나서 CASE문을 이용해 GRADE와 BONUS를 작성했다. SCORE의 평균을 내서 평가 등급과 성과금을 결정하도록 했다.SELECT A.EMP_NO, A.EMP_NA..