본문 바로가기
728x90

컴공생의 Knowledge/Algoritm Solution54

[프로그래머스] 해시 - 위장 문제 풀이 이번에는 프로그래머스에서 해시 문제 중 "위장" 문제 풀이를 해보겠습니다. 해시는 지난 완주하지 못한 선수 문제 풀이에서 다뤄봤던 알고리즘으로 해시 맵 자료구조를 활용하여 문제를 풀이하는 것이 중요한 점이라고 말할 수 있습니다. 혹시 해시 - 완주하지 못한 선수 문제 풀이를 보지 않으셨다면 보고 아래 문제 풀이에도 참고하시기 바랍니다. 2022.06.15 - [분류 전체보기] - [프로그래머스] 해시 - "완주하지 못한 선수" 문제 풀이(Hash 활용) [프로그래머스] 해시 - "완주하지 못한 선수" 문제 풀이(Hash 활용) 안녕하세요. 오늘은 어제 문제풀이했던 해시 > 완주하지 못한 선수의 문제 풀이 방법을 다른 알고리즘을 활용해서 문제를 풀어보려고 해요. 이렇듯 알고리즘 문제 풀이의 답은 없다는 것.. 2022. 6. 22.
[프로그래머스] 탐욕법 - 체육복 문제 풀이 오늘은 프로그래머스에서 탐욕법 문제 중 "체육복" 문제 풀이를 해보겠습니다. 탐욕법은 바로 부분적인 최적해가 전체적인 최적해가 되는 마법과 같은 개념으로 이루어진 알고리즘입니다. 매번 이 개념이 통하지는 않지만, Greedy한 알고리즘이 최선인 문제를 한번 풀어보겠습니다. 프로그래머스 > 탐욕법 > 체육복 문제 풀이 ◑ 문제 정보 문제명: 체육복 문제 난이도: Level 1 문제 푼 사람수: 34695명 사용 가능 언어: 11개 (JavaScript 사용) ◑ 문제 설명 점심시간에 도둑이 들어, 일부 학생이 체육복을 도난당했습니다. 다행히 여벌 체육복이 있는 학생이 이들에게 체육복을 빌려주려 합니다. 학생들의 번호는 체격 순으로 매겨져 있어, 바로 앞번호의 학생이나 바로 뒷번호의 학생에게만 체육복을 빌려.. 2022. 6. 20.
[프로그래머스] 완전탐색 - 모의고사 문제 풀이 오늘은 프로그래머스에서 완전탐색 알고리즘 중 "모의고사" 문제 풀이를 해보겠습니다. 완전탐색은 무식해 보일정도로 모두 탐색해서 결과를 얻어야하는 알고리즘 방법입니다. 이 문제처럼 어떤 문제를 풀 때 하나하나 다 확인해서 결과를 도출해야할 경우도 있으니 유사한 문제를 풀 때 참고하시기 바랍니다. 그럼 프로그래머스의 모의고사 문제 풀이 시작해보겠습니다. 프로그래머스 > 완전탐색 > 모의고사 문제 풀이 ▷ 문제 정보 문제명: 모의고사 문제 난이도: Level 1 문제 푼 사람수: 47720명 사용 가능 언어: 11개 (JavaScript 사용) ▷ 문제 설명 수포자는 수학을 포기한 사람의 준말입니다. 수포자 삼인방은 모의고사에 수학 문제를 전부 찍으려 합니다. 수포자는 1번 문제부터 마지막 문제까지 다음과 같.. 2022. 6. 19.
[프로그래머스] 정렬 - K번째수 문제 풀이 프로그래머스에서 정렬 중 K번째수 문제 풀이를 해보겠습니다. 정렬은 기본적으로 어떤 공통된 속성을 갖고 있는 리스트를 기준에 의해서 순서를 정해서 나열한다는 의미를 갖고 있습니다. 이 정렬의 기본 개념을 갖고 문제 설명을 확인하여 이해하고 알고리즘을 만들고 코드 구현까지 공유드리겠습니다. 프로그래머스 > 정렬 > K번째수 문제 풀이 ☞ 문제 정보 문제명: K번째수 문제 난이도: Level 1 문제 푼 사람수: 61117명 사용 가능 언어: 11개 (JavaScript 사용) ☞ 문제 설명 배열 array의 i번째 숫자부터 j번째 숫자까지 자르고 정렬했을 때, k번째에 있는 수를 구하려 합니다. 예를 들어 array가 [1, 5, 2, 6, 3, 7, 4], i = 2, j = 5, k = 3이라면 1. .. 2022. 6. 18.
[프로그래머스] 해시 - "완주하지 못한 선수" 문제 풀이(Hash 활용) 안녕하세요. 오늘은 어제 문제풀이했던 해시 > 완주하지 못한 선수의 문제 풀이 방법을 다른 알고리즘을 활용해서 문제를 풀어보려고 해요. 이렇듯 알고리즘 문제 풀이의 답은 없다는 것을 말씀드리고 싶고, 최대한 빠르고 효율적인 알고리즘을 선택하고 만들기 위한 공부 단계라고 생각하시면 도움이 될 것 같습니다~ 그럼 문제는 다시 짚어볼까요? 해시 > 완주하지 못한 선수: Level 1 JavaScript (Hash 활용) 이 Level 1 문제를 어떻게 해시를 활용해서 풀어볼 지, 문제의 의도대로 알고리즘을 만들고 코드를 구현해볼까합니다. 그럼 문제 설명 및 이해는 아래의 이전 포스팅을 보고 오시면 좋을 것 같습니다. 2022.06.13 - [컴공생의 Knowledge/Algorithm] - [프로그래머스] 해.. 2022. 6. 15.
[프로그래머스] 해시 - "완주하지 못한 선수" 문제 풀이 오늘은 프로그래머스에서 해시 테마의 "완주하지 못한 선수" 문제 풀이를 통해 알고리즘 공부를 해볼 것입니다. 문제 난이도는 Level 1이며, 저는 JavaScript로 코드를 구현할 것이므로 공부하시는데 참고해주세요~ 해시 > 완주하지 못한 선수: Level 1 JavaScript ♣ 문제 설명 완주하지 못한 선수의 문제 설명은 아래와 같습니다. 함께 읽어보시면서 이해해보시죠!! 이해를 돕기 위해 문제의 설명을 풀어볼께요~ Summary 마라톤에 참여한 선수 중 단 한명의 선수만 완주하지 못하였다. Inputs participant: 마라톤에 참여한 선수 이름 리스트 (문자열 배열) completion: 완주한 선수 이름 리스트 (문자열 배열) Output: 완주하지 못한 선수의 이름 이해가 바로 되시.. 2022. 6. 14.
[프로그래머스] 스택/큐 - 기능개발 문제 풀이 오늘은 드디어 프로그래머스에서 알고리즘 문제 풀이를 통해 알고리즘 코딩 공부를 해볼 예정입니다. 처음으로 풀어볼 문제는 바로 스택/큐 테마에서 "기능개발"이라는 문제입니다. 문제 난이도는 Level 2이며, 저는 JavaScript로 풀거니 참고해주세요!! 스택/큐 > 기능개발: Level 2 JavaScript ♣ 문제 설명 기능 개발 문제의 설명은 바로 아래와 같습니다. 이해를 돕기 위해 간단히 문제를 풀어볼께요. Summary 각 기능은 진도가 100%일 때 서비스에 반영 가능하다. 각 기능의 개발속도는 모두 다르다. 기능들은 배포가 되며, 순서대로 배포 된다. 이 때, 뒤에 있는 기능이 먼저 완료되면, 앞에 있는 기능 배포 시 함께 배포된다. Inputs progresses : 배포 순서대로 나열.. 2022. 6. 13.
[프로그래머스] 코딩 공부를 위한 프로그래머스 활용법 알려드립니다~ 지난번에는 프로그래머스에 대한 간단한 소개가 있었습니다. 그럼 이번에는 프로그래머스 활용법에 대해서 간단히 알려드릴까합니다. 혹시 프로그래머스가 뭔지 모르시는 분이 계신다면, 이전 포스팅 참고하시면 좋을 것 같아요~ 2022.06.08 - [컴공생의 Expertise/Algorithm] - 자료구조/알고리즘 코딩 공부는 여기서~ 프로그래머스!! 자료구조/알고리즘 코딩 공부는 여기서~ 프로그래머스!! 지금까지 JavaScript의 기본을 알아봤습니다. Array 정렬하기 부터 Stack과 Queue가 무엇인지? 그리고 문자열을 다루는 여러 함수들에 대해서 알아봤습니다~ 그러면 컴퓨터 언어의 기본을 배워봤으니~ uic11.tistory.com 프로그래머스의 활용법은 정말 다양합니다. 근데 저희는 자료구조 /.. 2022. 6. 9.
자료구조/알고리즘 코딩 공부는 여기서~ 프로그래머스!! 지금까지 JavaScript의 기본을 알아봤습니다. Array 정렬하기 부터 Stack과 Queue가 무엇인지? 그리고 문자열을 다루는 여러 함수들에 대해서 알아봤습니다~ 그러면 컴퓨터 언어의 기본을 배워봤으니~ 찐 코딩을 해봐야겠죠!! ^^ 먼저 코딩을 하기 위해서는 자료구조와 알고리즘 공부도 기반이 되어야 합니다~ 먼저 자료구조는 컴퓨터 데이터를 담을 수 있는 도구입니다. 네이버에서는 자료구조를 이렇게 설명해주고 있네요. 정말 어렵고 길게 쓰여있습니다. ^^ [자료구조] 그리고 알고리즘이란 컴퓨터 언어로 어떤 논리적 동작을 구현하는데 필요한 동작 방법이라고 간단하게 생각하시면 좋을 것 같습니다. 아래는 네이버 백과사전에서 알려주는 알고리즘의 정의입니다~ [알고리즘] 그럼 자료구조와 알고리즘을 배워야겠.. 2022. 6. 8.
728x90