전체태그 보기

#프로그래머스 (35개의 포스트)

awesomelon
본 문제는 프로그래머스 코딩테스트 연습에서 따온 문제이다. 두 정수 사이의 합 문제 설명 두 정수 a, b가 주어졌을 때 a와 b 사이에 속한 모든 정수의 합을 리턴하는 함수, solution을 완성하세요. 예를 들어 a = 3, b = 5인 경우, 3 + 4 + 5 = 12이므로 12를 리턴합니다. 제한 조건 - a...
pa324

프로그래머스 - SQL 중복 제거하기

2019년 11월 20일0개의 댓글
문제 image.png image.png 풀이 중복된 값은 한개로 카운팅해야하고, null값은 카운팅하지 않도록 쿼리를 작성해야 한다. DISTINCT를 사용하면 해결할 수 있다. ~sql SELECTCOUNT(DISTINCT NAME) AS count FROM ANIMAL_INS; ~...
noyo0123
문제이해 간단한 DFS/BFS 문제입니다. DFS,BFS의 목적은 모든 노드를 한 번씩 방문하는 것입니다. 방문을 한 번씩 하려면 방문 했는지 기록해놔야합니다. 방문 했음을 기록할 check 배열을 노드의 개수만큼 만듭니다. 로직 i번 컴퓨터와 j번 컴퓨터가 연결되어 있으면 computeri를 1로 표현해놨음. 일단 모든 컴퓨터에서 DF...
noyo0123
문제이해 주어지는 숫자의 개수는 2개 이상 20개 이하입니다. 그리고 저는 모든 숫자에 + , - 부호를 붙여서 누적할 것입니다. 그 누적 값이 타겟 넘버와 같으면 answer를 1씩 증가해줄 겁니다. 로직 최대 20개의 숫자를 늘어놓고, 각 숫자를 뽑아서 + 부호를 붙여서 누적할지, -부호를 붙여서 누적할지 이 두가지 경우가 존재합니다. 즉 2...
noyo0123
문제이해 당신은 최대한 다양한 종류의 폰켓몬을 가지길 원하기 때문에, 최대한 많은 종류의 폰켓몬을 포함해서 N/2마리를 선택하려 합니다. N마리 폰켓몬의 종류 번호가 담긴 배열 nums가 매개변수로 주어질 때, N/2마리의 폰켓몬을 선택하는 방법 중, 가장 많은 종류의 폰켓몬을 선택하는 방법을 찾아, 그때의 폰켓몬 종류 번호의 개수를 return 하도록 ...
noyo0123
문제이해 스킬트리의 문제는 스킬이 "CBD"로 주어지면 C - B - D 순으로 스킬을 배워야 한대요. 로직 제가 생각한 풀이는 스킬들을 queue에 넣고 skill_trees들을 순차탐색하면서 스킬이 존재하고, 큐의 front에 있는 스킬인지 확인을 합니다. front에 없다면 실패로 바로 탐색을 중지합니다. 그리고 실패했을때는 가능한 스킬트리...
noyo0123
문제이해 문자열 배열 participant 와 completion이 입력으로 들어옵니다. 각각 마라톤 참가한 사람들의 명단, 마라톤을 완주한 사람들의 명단입니다. 완주하지 못한 사람을 리턴하는 문제입니다. 로직 참가한 사람들의 명단을 순차 탐색합니다. 최대 10만이기 때문에 문제없습니다. 참가한 사람들을 map에 key:value에 이름:1대...
noyo0123

폰켓몬 javascript - 프로그래머스

2019년 10월 22일0개의 댓글
문제이해 제한 사항에 보면 nums 길이가 10000 이하의 자연수에요. 짝수이고요. 조합으로 뽑으려고 하면 2^10000은 1억 ( 1초에 1억번 이하 연산한다면 시간복잡도가 나쁘지 않다고 가정한답니다. ) 조합을 구현할 생각부터 하면 안됩니다. 왜 안되냐면 다음과 같은 조합을 사용한다면 maximum call stack 이란 에러메시지를 보게 되실거...
noyo0123
code 로직 123 ~ 987 328 hubo = [1000개] false 가능한 모든 수의 check배열을 만듭니다. true이면 숫자야구에서 정답인 수입니다. 123 -1스트라이크 , 1볼 true , 아니면 false 356 -1스트라이크 , 0볼 true , 아니면 false 327 -2스트라이크 , 0볼 true , 아니면 f...
[프로그래머스 고득점Kit] #4 정렬
wan088
정렬이란? 정렬은, 배열이나 List에 담긴 값들을 원하는 기준으로 순서를 재배열하는 과정을 뜻한다. 정렬 알고리즘은 삽입, 선택, 힙, 퀵, 머지 등 하나하나 얘기하기 힘들정도로 다양하기 때문에 여기서 설명은 생략하려고 한다. Stable vs Unstable 몇몇 정렬 문제에서 중요한 요소가 될 수 있는게 바로 이 부분이다. 간단하게 설명하자...
715junekim
문제 설명 - String형 배열 seoul의 element중 Kim의 위치 x를 찾아, 김서방은 x에 있다는 String을 반환하는 함수, solution을 완성하세요. seoul에 Kim은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니다. - 제한 사항 - * seoul은 길이 1 이상, 1000 이하인 배열입니다. * seoul의 원...
715junekim
문제 설명 - 문자열 s를 숫자로 변환한 결과를 반환하는 함수, solution을 완성하세요. - 제한 조건 - * s의 길이는 1 이상 5이하입니다. * s의 맨앞에는 부호(+, -)가 올 수 있습니다. * s는 부호와 숫자로만 이루어져있습니다. * s는 0으로 시작하지 않습니다. - 입출력 예 - 예를들어 str이 1234이면 1234를 반...
715junekim
-문제- 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지 못한 선수의 이름을 return 하도록 solution 함수를 작성해주세요. -제...
[프로그래머스 고득점Kit] #3 힙
wan088

[프로그래머스 고득점Kit] #3 힙

2019년 8월 15일0개의 댓글
힙이란? 힙(Heap)은 완전 이진트리의 일종으로서 일반적으로 root에 최소값이 오는 최소힙과 최대값이 오는 최대힙으로 구분된다. 같은 완전이진트리라 그런지 이진탐색트리와도 비슷한데, 이쪽의 경우 좌우와 상관없이 부모노드가 자식노드보다 작다/크다의 조건만을 갖는 트리이기 때문에 조금 다르다. 이를 일종의 반 정렬상태, 느슨한 정렬상태라고 부르기도 한...
[프로그래머스 고득점Kit] #2 스택/큐
wan088
스택 / 큐란? 스택(Stack)은 FIFO(First In First Out) 큐(Queue)는 LIFO(Last In First Out) 스택의 경우, 끝에서 삽입, 확인, 삭제연산이 일어날 경우 사용하고, 큐는 사용범위가 워낙 광범위해서 특정하기 힘든데, 일단 BFS에서 주로 사용한다. 🚀주요 사용하는 기능 in JAVA QueueV...
[프로그래머스 고득점Kit] #1 해시
wan088
해시란? Key-value쌍으로 데이터를 저장하는 자료구조 🚀주요 사용하는 기능 in JAVA HashMapK, V map 타 언어의 Dictionaray와 같은 역할을 하는 자료구조. 가장 중요한 점은 역시 기적적인 Hash의 성능을 통해 저장된 Key에 해당하는 Value를 O(1)의 시간복잡도로 검색이 가능하다는 것. (충돌 및 재해시를 ...
TIL 6월 23일 - 포기한 문제에 대처하는 법
ktseo41
 공부를 한게 없어서 생각을 쓴다. 이틀연속이다. 어쨌든, 오늘은 다른 스터디를 가서 프로그래머스 문제를 같이 풀어봤다. 나름의 해결책도 제시하고 남의 관점도 듣고했지만 결국 풀이를 포기하고 해설을 봤다. 슬픔을 공부하는 슬픔에서 신형철씨가 말했다. "당신이 한번 포기한 적 있는 대상은, 절대로 포기 못 할 대상이 다시는 될 수 없다. ...
[알고리즘 풀이] 프로그래머스 LV2 'JadenCase 문자열 만들기'
terry960302
문제설명 == JadenCase란 모든 단어의 첫 문자가 대문자이고, 그 외의 알파벳은 소문자인 문자열입니다. 문자열 s가 주어졌을 때, s를 JadenCase로 바꾼 문자열을 리턴하면 됩니다. 제한조건 * s는 길이 1 이상인 문자열입니다. * s는 알파벳과 공백문자(" ")로 이루어져 있습니다. * 첫 문자가 영문이 아닐때에는 이어지는 영문은 소문자...
[알고리즘 풀이] 프로그래머스 공채대비 모의고사 1번 문항
terry960302
문제설명 == 이 시험같은 경우 제출하면 사라져버리는 문제이기에 최대한 기억나는 대로 서술하겠습니다. 우선 여러 개의 숫자가 들어있는 리스트 2개를 받습니다. 그 중 첫번째 여러 개의 숫자가 있는 리스트를 받아 이 리스트의 숫자를 맨 앞의 숫자를 맨 뒤로 보내고, 그러고 난 후 다시 맨 앞의 숫자를 다시 맨 뒤로 보내고 이 과정을 반복을 할 경우, 만약 ...
[알고리즘 풀이] 프로그래머스 LV1 '수박수박수...'
terry960302
문제설명 == 길이가 n이고, 수박수박수박수....와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 수박수박을 리턴하고 3이라면 수박수를 리턴하면 됩니다. 제한조건 n은 길이 10,000이하인 자연수입니다. 예시 == * n이 3일 경우, '수박수' 라고 총 3개의 문자열이 나옴. * n이 4일 경우...