일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- join
- 안드로이드스튜디오
- Kotlin
- CS
- groupby
- select
- Android
- 기술면접
- Til
- 인프런
- MySQL
- 스터디
- 티스토리챌린지
- SQL
- 코테
- doitandroid
- 자바
- 혼공챌린지
- 정처기
- 프로그래머스
- 혼공파
- 혼공단
- 오블완
- 코틀린
- 안드로이드
- 정보처리기사
- 알고리즘
- 자료구조
- 카카오코테
- java
- Today
- Total
목록프로그래머스 (105)
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📌 정답처음에는 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📌정답처음에는 까다로워 보이는 문제였지만 차근차근 작성하면 어렵지 않은 문제였다. 먼저 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..
📌 문제 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr📌 풀이이 문제는 문자열 처리를 묻는 문제였다. 어찌저찌 구현은 했지만 파고파고 들어가는 depth와 과한 if - else 문의 향연..이게 맞나 싶었지만 정답이긴 했다. 그냥 직관적으로 무식하게 짜서 그런지 속도도 꽤 빠르다..^^ 우선 내가 푼 순서의 흐름을 정리해보겠다.세 차례의 게임 후 얻는 점수를 저장할 배열을 만든다."점수|보너스|[옵션]" 으로 이루어진 문자열 dartResult를 순회한다.dartResult.charAt(i)가 숫자일 경우그 다음 문자가 숫자일 경우(= 점수가 10점인 ..
📌 문제 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr📌 풀이문자열 계산 문제인데 skip에 포함되는 문자는 건너뛰어야 하는 조건이 있었다. 주의할 점은 index만큼의 뒤의 알파벳이 'z'를 넘어갈 경우 다시 'a'로 돌아가야 한다. 아스키 코드를 이용해서 풀면 되는군! 하고 바로 떠올랐지만 어쩐지 자꾸 꼬여가는 코드로 머리가 아팠던 문제였다..흐름을 차근차근 정리해보면 다음과 같다.문자열 s를 한 글자씩 순회한다.이중 for문으로 index번만큼 반복한다.한 바퀴 돌 때마다 s.charAt(i) + 1씩 증가한다.만약 증가한 문자가 'z'(122) ..
📌 문제 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr📌 풀이두 개의 정수의 임의의 자리에서 공통으로 나타나는 정수를 이용해 만들 수 있는 가장 큰 정수를 반환해야 하는 문제였다. 전체적인 흐름은 다음과 같이 정리할 수 있다.가장 먼저 X와 Y에서 공통된 숫자를 찾기 위해 X, Y를 돌면서 저장할 HashMap을 두 개 만든다.각각의 HashMap은 각 자리의 정수를 key로 갖고, 해당 정수의 개수를 value로 갖는다.최종적으로 만들어진 HashMap을 모두 순회하면서 각 map의 key로 같은 숫자가 존재한다면(짝지을 수 있다면)해당 숫자의 개수가 ..