문제풀이 3

프로그래머스 키패드 누르기 문제풀이- [세무민의 코딩일기]

안녕하세요 세기무민입니다. 이번에 돌아온 포스팅은 프로그래머스 알고리즘 풀이 문제로 돌아왔습니다. 문제설명 입출력 예시 문제풀이 우선 저는 이 문제를 보자마자 메모장에 그림을 그렸습니다. 전화기가 위와 같이 있다고 가정하면 일단 왼쪽의 숫자들은 3으로 나눴을 때 나머지가 1인 경우의 수 오른쪽의 숫자들은 3으로 나눴을 때 나머지가 0인 경우의 수라는 것을 알 수 있습니다. 그런 뒤 이 문제에서 가장 중요한건 가운데 숫자를 클릭하는 방법인데 우선은 가운데 숫자들은 3가지의 조건을 생각해봤습니다. 1. 왼쪽과 오른쪽의 길이가 같은 경우 2. 왼쪽이 오른쪽 길이보다 큰 경우 3. 오른쪽이 왼쪽 길이보다 큰 경우 위와 같이 3가지로 나눌 수 있는데 그렇다면 어떻게 길이를 구분할 지 고민해본 끝에 좌표 이동을 생..

[세무민의 코딩일기] LeetCode Nth Highest Salary 문제풀이

오늘 포스팅 할 내용은 LeetCode에 있는 Nth Highest Salary 문제를 풀어봤습니다. 1. 문제 설명 2. 문제 및 예시 3. 문제 풀이 이번 문제는 해석하면 N이라는 특정 값을 입력했을 때 해당 순위의 Salary를 출력하고 없는 경우라면 Null을 출력하는 문제이다. 또한 이번 문제는 N을 입력을 해주기 때문에 DB Function을 이용한 문제라는 것도 알아야 한다. CREATE FUNCTION getNthHighestSalary(N INT) RETURNS INT BEGIN RETURN ( SELECT distinct salary FROM (SELECT id, salary, dense_rank() over(order by salary desc) as totals from Employ..

Algorithm/leetCode 2022.01.08

[세무민의 코딩일기] 숫자 문자열과 영단어 문제 풀이

오늘 포스팅은 프로그래머스에 있는 "숫자 문자열과 영단어" 문제를 풀어보겠습니다. 해당 문제는 2021년도 카카오 채용연계형 인턴십에서 진행된 문제입니다. 1. 문제 설명 2. 제한사항 및 입출력 예제 3. 문제 풀이 이 문제를 보자마자 생각난건 "replace" 딱 하나였습니다. 말 그대로 숫자가 아닌경우 치환해주면 되는데 파이썬에서 문자열 치환을 해줄 수 있는건 replace입니다. 사실 2차원 배열과 반복문을 통해서 해당 숫자가 아니고 영단어 키워드가 존재한다면 체크해주는 등 이런 방법으로도 가능할 수 있지만 그냥 생각난 replace로 풀었습니다. 생각보다 엄청 쉽게 풀었는데 이게 되서 깜짝놀랬네요..ㄷㄷ def solution(s): s = s.replace('zero','0').replace(..