본문 바로가기

전체 글108

[Programmers] (IS NULL) 총 3문제 - MySQL 알고리즘 문제 풀이 / 프로그래머스 (programmers) - IS NULL 문제 링크 이름이 없는 동물의 아이디 : https://programmers.co.kr/learn/courses/30/lessons/59039 이름이 있는 동물의 아이디 : https://programmers.co.kr/learn/courses/30/lessons/59407 NULL 처리하기 : https://programmers.co.kr/learn/courses/30/lessons/59410 문제 풀이 이번 문제들도 쉽기 때문에 마지막 문제만 간략하게 설명하겠습니다. 혹시나 모르는 점이나 궁금한 점이 있다면 댓글로 남겨주세요. 마지막 문제는 'NAME'이 NULL 일 경우 'No name' 으로 해줘야 하므로 IFNULL(.. 2021. 10. 10.
[Programmers] (SUM, MAX, MIN) 총 4문제 - MySQL 알고리즘 문제 풀이 / 프로그래머스 (programmers) - SUM, MAX, MIN 문제 링크 최댓값 구하기 : https://programmers.co.kr/learn/courses/30/lessons/59415 최소값 구하기 : https://programmers.co.kr/learn/courses/30/lessons/59038 동물 수 구하기 : https://programmers.co.kr/learn/courses/30/lessons/59406 중복 제거하기 : https://programmers.co.kr/learn/courses/30/lessons/59408 문제 풀이 레벨2 로 구성되어있지만 쉽다고 생각되어 설명은 따로 하지 않겠습니다. 혹시나 모르는 점이나 궁굼한 점이 있다면 댓글로 .. 2021. 10. 8.
[Programmers] (SELECT) 총 7문제 - MySQL 알고리즘 문제 풀이 / 프로그래머스 (programmers) - SELECT 문제 링크 모든 레코드 조회하기 : https://programmers.co.kr/learn/courses/30/lessons/59034 역순 정렬하기 : https://programmers.co.kr/learn/courses/30/lessons/59035 아픈 동물 찾기 : https://programmers.co.kr/learn/courses/30/lessons/59036 어린 동물 찾기 : https://programmers.co.kr/learn/courses/30/lessons/59037 동물의 아이디와 이름 : https://programmers.co.kr/learn/courses/30/lessons/59403 여러 기.. 2021. 10. 8.
[Programmers/Lv2] 더 맵게 알고리즘 문제 풀이 / 프로그래머스 (programmers) - 더 맵게 문제 링크 https://programmers.co.kr/learn/courses/30/lessons/42626 코딩테스트 연습 - 더 맵게 매운 것을 좋아하는 Leo는 모든 음식의 스코빌 지수를 K 이상으로 만들고 싶습니다. 모든 음식의 스코빌 지수를 K 이상으로 만들기 위해 Leo는 스코빌 지수가 가장 낮은 두 개의 음식을 아래와 같 programmers.co.kr 문제 풀이 '우선순위 큐' 를 이용한다. K이상이 안된다면 -1을 아니면 answer을 출력한다. 이 문제를 보자마자 queue로 풀면 좋겠다는 생각을 했다. 우선순위 큐로 푼다면 poll() 할 때 마다 제일 작은 스코빌 지수가 나올테니 그렇게 꺼낸 값을 계산해서 .. 2021. 10. 5.
Git 명령어 파헤치기 내가 여러 프로젝트들을 하면서 git의 중요성을 뼈저리게 느꼈다. 처음 개발자가 되기로 마음먹고 공부하고 프로젝트들을 시작했을 당시엔 github를 알지 못해 팀원들과의 협업 과정에서 코드 충돌이 매우 많았다. 이뿐 아니라 애초에 코드 통합하기 위한 과정에서부터 매번 압축을 하고 메일로 주고받아야 하는 불편함도 있었다. 처음 git을 알고 나선 명령어가 어려워 GitHub Desktop을 사용하여 버튼으로 간편하게 했었다. 이렇게 익숙해진 후 명령어도 배워보고자 해서 구글링을 통해 명령어를 공부하고 프로젝트하며 사용해보니 이젠 간단한 명령어들은 거의 외워 사용하는데 어려움 없이 잘 쓰고 있다. 이렇게 익숙해진 지금, 오늘 그 명령어를 정리해보려고 한다. 순서 정리 없이 생각나는 것들을 나열할 거라 보는 .. 2021. 9. 28.
[Programmers/위클리 챌린지] 1주차_부족한 금액 계산하기 - Java 알고리즘 문제 풀이 / 프로그래머스 (programmers) - 1주차_부족한 금액 계산하기 프로그래머스 사이트를 구경하다 위클리 챌린지가 생긴 것을 보고 풀어봐야겠다고 생각했다. 난 이제 봤는데 벌써 많이 나와있어서 놀랐다. 나도 빨리 풀어나가야겠단 생각을 했다. 그래서 오늘 바로 1주 차 문제를 풀어봤고 지금 그 설명을 해보려고 한다. 문제 링크 https://programmers.co.kr/learn/courses/30/lessons/82612 코딩테스트 연습 - 1주차_부족한 금액 계산하기 새로 생긴 놀이기구는 인기가 매우 많아 줄이 끊이질 않습니다. 이 놀이기구의 원래 이용료는 price원 인데, 놀이기구를 N 번 째 이용한다면 원래 이용료의 N배를 받기로 하였습니다. 즉, 처음 이 progra.. 2021. 9. 9.
[프로그래머스(programmers)] (2021 와디즈 코딩챌린지) 3번 : we make CODE #better 알고리즘 문제 풀이 / 프로그래머스 (programmers) - 코딩테스트 3번 와디즈 코딩챌린지의 마지막 문제인 3번 해설을 해보도록 하겠다. 3번 문항은 와디즈 문제들 중 푸는 시간이 가장 오래 걸렸던 문제다. 간단한 것 같으면서도 복잡했다. 문제 설명 저작권의 문제로 문제설명은 생략하겠습니다. 문제 풀이 arr을 중복없이 정렬한 list를 생성한다. 초기설정으로 0이 있을 때와 없을 때를 구분해 resArr의 값을 갱신해준다. check 변수를 설정해 어디까지 바꿀지 판단한다. 최소한의 경우로 해야하므로 가장 작은 수로 전체를 맞춰나가야 하는것이 핵심이다. 그래서 나는 list에 어떤 숫자로 갱신해나가야하는지 정렬해두었다. 그 후 초기값인 0이나 최소값에서 부터 arr배열이 되기 까지의 과정을 나타.. 2021. 8. 26.
[프로그래머스(programmers)] (2021 와디즈 코딩챌린지) 2번 : we make CODE #better 알고리즘 문제 풀이 / 프로그래머스 (programmers) - 코딩테스트 2번 요즘 이것저것 사적인 일들이 너무 바빠서 블로그 업로드를 잘 하지 못했다. 여러가지 다른 문제들도 많이 풀어놓았으니 차근차근 하나씩 업로드를 하도록 하겠다. 오늘은 와디즈 코딩챌린지 2번문제 해설을 해보려고한다. 이 문제를 풀려고 봤을 때 처음엔 어떻게 할지 막막했지만 한참을 문제를 읽고 생각해보니 코드 짜는건 금방 할 수 있는 문제였다. 문제 설명 저작권의 문제로 문제설명은 생략하겠습니다. 입출력 예 code "a=3", "..a=4", "..b=3", "..print a", ".......a=6", ".......print a", ".......print b", "..print a", "....a=7", "....prin.. 2021. 8. 24.
[프로그래머스(programmers)] (2021 와디즈 코딩챌린지) 1번 : we make CODE #better 알고리즘 문제 풀이 / 프로그래머스 (programmers) - 코딩테스트 1번 2021년 8월 21일에 프로그래머스에서 열리는 와디즈 코딩챌린지 신청을 하고, 오늘 그 시험을 봤다. 경력 3년차 이상부터 뽑는 챌린지라 취준생인 나는 뽑히진 못하지만 그냥 신청해서 봤다,,ㅎ 문제는 총 3문제로 3시간 이내에 풀면 되는 시험이었는데 나에겐 나름 생각해야할 어려운 문제였어서 2시간 20분 정도 걸렸다. 오늘은 그 첫 문제 풀이를 해보려고 한다. 문제 설명 저작권의 문제로 문제설명은 생략하겠습니다. 문제 풀이 동 호수, 비밀번호를 hashmap에 넣는다. s를 split으로 # 마다 끊어준다. s가 hashmap에 동 호수와 일치하면 answer++을 해준다. s가 무조건 동 호수, 비밀번호 순서가 아니기 때.. 2021. 8. 21.
LRU 알고리즘이란 무엇인가? ▏목적 ◦ LRU 알고리즘 이해하기 ▏시작하는 말 정처기 자격증 준비했을 때 이론을 공부했었다. 그런데 마침 오늘 프로그래머스에서 문제를 보는데 LRU를 사용해야 하는 문제였다. 그래서 오늘은 그 LRU알고리즘을 설명해보려고 한다. ▏LRU 란 무엇인가? LRU (Least Recently Used) : 가장 오랫동안 참조하지 않은 페이지를 교체하는 기법 페이지 교체 알고리즘들의 종류중 하나로 가장 최근에 사용되지 않은 페이지를 제거하는 알고리즘이다. 대표적인 방법으로 전에 포스팅했던 Queue 형식을 생각하면 된다. ▏원리 크기가 4인 배열이 있다고 가정했을 때, 처음 4번은 들어온 순서대로 넣어주면 된다. 하지만 오른쪽 처럼 숫자 5를 넣으려고 한다면 가장 먼저 넣었던 1 (오래된 데이터)를 제거하고.. 2021. 8. 20.
[Programmers/2018 KAKAO BLIND RECRUITMENT] 캐시 - Java 알고리즘 문제 풀이 / 프로그래머스 (programmers) - 캐시 문제 링크 https://programmers.co.kr/learn/courses/30/lessons/17680 cacheSize) { cache.removeFirst(); } } return answer; } 2021. 8. 19.
[Programmers/Lv2) 구명보트 - Java 알고리즘 문제 풀이 / 프로그래머스 (programmers) - 구명보트 문제 링크 https://programmers.co.kr/learn/courses/30/lessons/42885 코딩테스트 연습 - 구명보트 무인도에 갇힌 사람들을 구명보트를 이용하여 구출하려고 합니다. 구명보트는 작아서 한 번에 최대 2명씩 밖에 탈 수 없고, 무게 제한도 있습니다. 예를 들어, 사람들의 몸무게가 [70kg, 50kg, 80kg, 5 programmers.co.kr 문제 풀이 배열 people을 정렬시킨다. hap 이 limit을 넘어간다면 i-- 해준다. 마지막 남은 값이 하나라면 answer++ 구명보트를 최대한 적게 사용해야 하므로 가장 무거운 사람부터 고려하면 되는 문제이므로 바로 오름차순 정렬을 했다. 내.. 2021. 8. 10.
반응형