(C++) - 프로그래머스(2018 KAKAO BLIND) : [1차] 셔틀버스 답
programmers.co.kr/learn/courses/30/lessons/17678 코딩테스트 연습 - [1차] 셔틀버스 10 60 45 [23:59,23:59, 23:59, 23:59, 23:59, 23:59, 23:59, 23:59, 23:59, 23:59, 23:59, 23:59, 23:59, 23:59, 23:59, 23:59] 18:00 programmers.co.kr 구현을 통해 적절히 시간계산 하는 문제였습니다. 풀이방법 1. 문자열 정리 : "09:01"식으로 되어있는 timetable배열을 시간계산의 편리성을 위해 새로운 vector timeInt 변수에 계산을 통해 분으로 바꾸고 저장합니다. 그 후 오름차순으로 정렬합니다. 2. 한 번의 버스 운행에 탑승하는 인원 계산 : 0번째 운..
(C++) - 프로그래머스(월간코드챌린지) : 쿼드압축 후 개수 세기
programmers.co.kr/learn/courses/30/lessons/68936 코딩테스트 연습 - 쿼드압축 후 개수 세기 [[1,1,0,0],[1,0,0,0],[1,0,0,1],[1,1,1,1]] [4,9] [[1,1,1,1,1,1,1,1],[0,1,1,1,1,1,1,1],[0,0,0,0,1,1,1,1],[0,1,0,0,1,1,1,1],[0,0,0,0,0,0,1,1],[0,0,0,0,0,0,0,1],[0,0,0,0,1,0,0,1],[0,0,0,0,1,1,1,1]] [10,15] programmers.co.kr 재귀함수를 구현하는 문제였습니다. 풀이방법 1. 부분 정사각형의 면적이 모두 같은 영역인지 확인합니다. 2. 정사각형의 영역이 모두 같은 수(0,1)로 되어 있다면 압축이 가능합니다. 반대..
(C++) - 프로그래머스(2017 카카오 코드 예선) : 카카오프렌즈 컬러링북
programmers.co.kr/learn/courses/30/lessons/1829 코딩테스트 연습 - 카카오프렌즈 컬러링북 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 BFS를 이용해 풀었던 문제였습니다. 풀이방법 1. visit하지 않은 영역마다 영역의 개수를 증가 2. visit하지 않은 영역마다 bfs함수 실행, 영역의 크기를 반환 Code #include #include #include #include #include using namespace std; int visit[101][101]; int dx[4] = {0,0,1,-1}; i..
(Javascript) - 프로그래머스(2019 카카오 겨울 인턴) : 징검다리 답
programmers.co.kr/learn/courses/30/lessons/64061 코딩테스트 연습 - 크레인 인형뽑기 게임 [[0,0,0,0,0],[0,0,1,0,3],[0,2,5,0,1],[4,2,4,4,2],[3,5,1,3,1]] [1,5,3,5,1,2,1,4] 4 programmers.co.kr 구현하는 문제였습니다. 풀이방법 1. 인형을 뽑을 때의 위치(행)를 구한다. 2. 뽑은 인형을 배열에 담고 연속인지 판별해 상태를 갱신한다. 3. 답출력 Code function getDollPos(board,oneMove){ for(let i = 0; i < board[0].length; i++){ if(board[i][oneMove]) return i; } return -1; } function u..