본문 바로가기

Algorithm/Programmers

(46)
[2018 KAKAO BLIND RECRUITMENT][Map 활용] 압축 - Java 문제 바로가기 코딩테스트 연습 - [3차] 압축 TOBEORNOTTOBEORTOBEORNOT [20, 15, 2, 5, 15, 18, 14, 15, 20, 27, 29, 31, 36, 30, 32, 34] programmers.co.kr 주어진 문자열을 LZW 알고리즘으로 압축시키는 문제입니다. 음.... 하라는대로 하면 됩니당 ㅎㅎ. import java.util.*; class Solution { public int[] solution(String msg) { Map dict = new HashMap(); List list = new ArrayList(); // 사전 초기화 for(char c = 'A'; c
[2018 KAKAO BLIND RECRUITMENT][구현/문자열 처리] 방금그곡 - Java 문제 바로가기 코딩테스트 연습 - [3차] 방금그곡 방금그곡 라디오를 자주 듣는 네오는 라디오에서 방금 나왔던 음악이 무슨 음악인지 궁금해질 때가 많다. 그럴 때 네오는 다음 포털의 '방금그곡' 서비스를 이용하곤 한다. 방금그곡에서는 TV, programmers.co.kr 이제 2018 카카오 3차 문제입니다. 특별한 알고리즘은 필요없고 문자열 처리랑 아주 쬐끄만 아이디어를 갖고 쉽게 풀 수 있는 문제랍니다. import java.util.*; class Solution { static class Music implements Comparable { int no, time; // 제목, 악보, time동안 진행되는 악보 String title, score, scoreLine; public int comp..
[2018 KAKAO BLIND RECRUITMENT][문자열 처리] 다트 게임 - Java 문제 바로가기 코딩테스트 연습 - [1차] 다트 게임 programmers.co.kr 문자열을 다루는 문제입니다. 정규 표현식을 연습 많이 해보아야겠습니다 ㅜㅜ class Solution { static class Result{ int score, total; String bonus; } public int solution(String dartResult) { int answer = 0; Result[] results = new Result[3]; for(int i = 0; i < 3; i++) results[i] = new Result(); getTurn(dartResult, results); for(int i = 0; i < results.length; i++) { Result result = res..
[2018 KAKAO BLIND RECRUITMENT][비트마스킹] 비밀지도 - Java 문제 바로가기 코딩테스트 연습 - [1차] 비밀지도 비밀지도 네오는 평소 프로도가 비상금을 숨겨놓는 장소를 알려줄 비밀지도를 손에 넣었다. 그런데 이 비밀지도는 숫자로 암호화되어 있어 위치를 확인하기 위해서는 암호를 해독해야 한다. 다 programmers.co.kr 비트마스킹을 이용하면 아주 간단히 풀 수 있는 문제랍니다. 비트마스킹 연습합시다!! class Solution { public String[] solution(int n, int[] arr1, int[] arr2) { String[] answer = new String[n]; for(int i = 0; i < n; i++) { answer[i] = String.format("%" + n + "s", toBinary(arr1[i] | arr2..
[2018 KAKAO BLIND RECRUITMENT][구현] 캐시 - Java 문제 바로가기 코딩테스트 연습 - [1차] 캐시 3 [Jeju, Pangyo, Seoul, NewYork, LA, Jeju, Pangyo, Seoul, NewYork, LA] 50 3 [Jeju, Pangyo, Seoul, Jeju, Pangyo, Seoul, Jeju, Pangyo, Seoul] 21 2 [Jeju, Pangyo, Seoul, NewYork, LA, SanFrancisco, Seoul, Rome, Paris, Jeju, NewYork, Rome] 60 5 [Jeju, Pangyo, S programmers.co.kr 캐시란 문제 이름만 보고 쫄았는데 별거 없었습니다. 캐시나 페이지 교체 알고리즘 중 LRU 알고리즘에 대한 이해만 있으면 매우 쉽게 풀 수 있는 문제입니다. import j..
[2018 KAKAO BLIND RECRUITMENT][구현] 프렌즈4블록 - Java 문제 바로가기 코딩테스트 연습 - [1차] 프렌즈4블록 프렌즈4블록 블라인드 공채를 통과한 신입 사원 라이언은 신규 게임 개발 업무를 맡게 되었다. 이번에 출시할 게임 제목은 프렌즈4블록. 같은 모양의 카카오프렌즈 블록이 2×2 형태로 4개가 붙 programmers.co.kr 앞에 문제 풀다가 이 문제를 보니 선녀가 따로 없습니다. 마찬가지로 특별한 알고리즘없이 하라는 대로 하면 됩니다. import java.util.*; class Solution { char[][] map; int answer = 0; public int solution(int m, int n, String[] board) { // char[][] 배열로 다룸 map = new char[m][n]; for(int i = 0; i ..
[2018 KAKAO BLIND RECRUITMENT][구현] 셔틀버스 - Java 문제 바로가기 코딩테스트 연습 - [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 마찬가지로 2018 카카오 블라인드 문제입니다. 문제 이해하는데 꽤 걸려씀니다 ^^;;;;;;;;;;;;; 특정한 알고리즘을 요하진 않고.. 문제에 주어진대로 구현을 잘 하면 됩니다. import java.util.*; class Solution { static class Time implements Comparable { int hours, minute; // timetable 파싱 Time(St..
[2018 KAKAO BLIND RECRUITMENT][구현] 뉴스 클러스터링 - Java 문제 바로가기 코딩테스트 연습 - [1차] 뉴스 클러스터링 뉴스 클러스터링 여러 언론사에서 쏟아지는 뉴스, 특히 속보성 뉴스를 보면 비슷비슷한 제목의 기사가 많아 정작 필요한 기사를 찾기가 어렵다. Daum 뉴스의 개발 업무를 맡게 된 신입사원 튜브 programmers.co.kr 문자열 두 개가 주어졌을 때 두 문자열의 "자카드 유사도"를 구하는 문제입니다. Map을 사용해서 간단하게 구현했습니당 ㅎ.ㅎ import java.util.*; class Solution { public int solution(String str1, String str2) { int intersection = 0, union = 0; // 대소문자 구별 X str1 = str1.toLowerCase(); str2 = str2..