알고리즘/프로그래머스 카카오
-
프로그래머스 Lv.2) [1차] 뉴스 클러링알고리즘/프로그래머스 카카오 2020. 5. 22. 22:47
2018 KAKAO BLIND RECRUITMENT [1차] 뉴스 클러링 코딩테스트 연습 - [1차] 뉴스 클러스터링 뉴스 클러스터링 여러 언론사에서 쏟아지는 뉴스, 특히 속보성 뉴스를 보면 비슷비슷한 제목의 기사가 많아 정작 필요한 기사를 찾기가 어렵다. Daum 뉴스의 개발 업무를 맡게 된 신입사원 튜브�� programmers.co.kr 풀이 한 index를 기준으로 다음 Index와 합쳐 하나의 집합을 이루는데, 이 때 알파벳인지를 확인하는 것과 다중집합이 가능하다는 점, 대소문자 차이는 무시하고 같은 원소로 취급한다는 점, 합집합이 0일 때는 1을 리턴한다 이 4가지만 유의하면 되는 문제다. 처음에 알파벳 집합만 가능하다에서 알파벳을 제외한 글자는 제거하고 집합을 구해줬더니, 생기면 안되는 집합..
-
프로그래머스 Lv.2) 단체사진 찍기알고리즘/프로그래머스 카카오 2020. 5. 19. 22:51
단체사진 찍기 코딩테스트 연습 - 단체사진 찍기 단체사진 찍기 가을을 맞아 카카오프렌즈는 단체로 소풍을 떠났다. 즐거운 시간을 보내고 마지막에 단체사진을 찍기 위해 카메라 앞에 일렬로 나란히 섰다. 그런데 각자가 원하는 배치가 모두 � programmers.co.kr 풀이 우여곡절이 많았던 문제다. 시간초과가 뜰까봐 문제를 보자마자 생각난 완전탐색을 미뤄두고 여러가지 시도를 했다. 하지만, 이마저도 다 시간초과가 떠서 어떻게 풀라는 건지 막막했다. 문제를 푼 지 오랜시간이 지나고 도저히 모르겠어서 검색을 했다. 맨 위에 나온 블로그를 켜자마자 첫 줄에 완전탐색으로 풀었다는 글을 보자마자 블로그를 껐다. 그리고 한숨을 쉬었다.. 완탐이 되는 문제라니.. 수학적 공식을 활용하려고 발버둥 쳤던 내 자신을 반성..
-
프로그래머스 Lv.2) 튜플알고리즘/프로그래머스 카카오 2020. 5. 19. 22:21
튜플 코딩테스트 연습 - 튜플 "{{2},{2,1},{2,1,3},{2,1,3,4}}" [2, 1, 3, 4] "{{1,2,3},{2,1},{1,2,4,3},{2}}" [2, 1, 3, 4] "{{4,2,3},{3},{2,3,4,1},{2,3}}" [3, 2, 4, 1] programmers.co.kr 풀이 답의 규칙을 찾은 결과 가장 작은 크기의 부분 수열이 가진 원소의 순서대로 답의 순서가 정해진다는 것이었다. "{{1,2,3},{2,1},{1,2,4,3},{2}}" 위의 예제로 설명하면, 가장 작은 크기의 부분수열 {2}로부터 2가 정답의 맨 첫번째임을 알 수 있고, 그다음 {2,1}을 통해 2->1, {1,2,3}을 통해 2->1->3, {1,2,4,3}을 통해 2->1->3->4가 되는 것이다...
-
프로그래머스 Lv.2) 카카오프렌즈 컬러링북알고리즘/프로그래머스 카카오 2020. 5. 16. 16:34
카카오프렌즈 컬러링북 코딩테스트 연습 - 카카오프렌즈 컬러링북 6 4 [[1, 1, 1, 0], [1, 2, 2, 0], [1, 0, 0, 1], [0, 0, 0, 1], [0, 0, 0, 3], [0, 0, 0, 3]] [4, 5] programmers.co.kr 풀이 그림의 난이도를 영역의 수로 정의했다. (영역이란 상하좌우로 연결된 같은 색상의 공간을 의미한다. picture의 원소 중 값이 0인 경우는 색칠하지 않는 영역을 뜻한다. 이 두 부분만 유의하면 어렵지 않게 풀 수 있었다. 영역의 갯수와 가장 넓은 공간을 가지고 있는 영역의 넓이를 리턴해야하기 때문에 1. 먼저 grouping을 해주고 2. 해당 그룹의 넓이를 HashMap에 저장해주었다. grouping을 할때는 out of index..
-
프로그래머스 Lv.4) 추석 트래픽알고리즘/프로그래머스 카카오 2020. 5. 15. 00:00
카카오 2018 Blind Recruitment 추석 트래픽 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 결국은 다시 풀어서 맞았다. 전에 문제를 풀었을 때는 확실히 겁에 질렸던 것 같다. 날짜 검사를 해야한다는 압박감에 평소에 쓰지도 않는 Date 라던지 SimpleDateFormat을 검색해서 적용하려고 하고, 그 이후에는 0.001초 마다 검사하면 time over가 뜰텐데 하는 마음에 HashMap에 초단위로 저장을 하고 그랬다. 틀릴줄알고 작성한 코드가 78점이나 나와서 당황했지만, 그게 독이었던 것 같다. 아무튼 문제를 다시 보니까 생각..
-
-
알고리즘) 카카오 블라인드 채용 2020, 외벽 점검알고리즘/프로그래머스 카카오 2020. 5. 8. 20:38
Kakao Blind Recruitment 2020 외벽 점검 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 제한사항 n은 1 이상 200 이하인 자연수입니다. weak의 길이는 1 이상 15 이하입니다. 서로 다른 두 취약점의 위치가 같은 경우는 주어지지 않습니다. 취약 지점의 위치는 오름차순으로 정렬되어 주어집니다. weak의 원소는 0 이상 n - 1 이하인 정수입니다. dist의 길이는 1 이상 8 이하입니다. dist의 원소는 1 이상 100 이하인 자연수입니다. 친구들을 모두 투입해도 취약 지점을 전부 점검할 수 없는 경우에는 -1을 retur..
-
알고리즘) 카카오 블라인드 채용 2020, 기둥과 보 설치알고리즘/프로그래머스 카카오 2020. 5. 7. 00:35
Kakao Blind Recruitment 2020 기둥과 보 설치 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 주목할 점 기둥은 바닥 위에 있거나 보의 한쪽 끝 부분 위에 있거나, 또는 다른 기둥 위에 있어야 합니다.보는 한쪽 끝 부분이 기둥 위에 있거나, 또는 양쪽 끝 부분이 다른 보와 동시에 연결되어 있어야 합니다. 벽면을 벗어나게 기둥, 보를 설치하는 경우는 없습니다. 바닥에 보를 설치 하는 경우는 없습니다. 구조물은 교차점 좌표를 기준으로 보는 오른쪽, 기둥은 위쪽 방향으로 설치 또는 삭제합니다. 구조물이 겹치도록 설치하는 경우와, 없는 ..