본문 바로가기

분류 전체보기

(31)
[java] level1 / 2019 카카오 개발자 겨울 인턴십 / 크레인 인형뽑기 게임 [문제 설명] 게임개발자인 죠르디는 크레인 인형뽑기 기계를 모바일 게임으로 만들려고 합니다. 죠르디는 게임의 재미를 높이기 위해 화면 구성과 규칙을 다음과 같이 게임 로직에 반영하려고 합니다. 게임 화면은 1 x 1 크기의 칸들로 이루어진 N x N 크기의 정사각 격자이며 위쪽에는 크레인이 있고 오른쪽에는 바구니가 있습니다. (위 그림은 5 x 5 크기의 예시입니다). 각 격자 칸에는 다양한 인형이 들어 있으며 인형이 없는 칸은 빈칸입니다. 모든 인형은 1 x 1 크기의 격자 한 칸을 차지하며 격자의 가장 아래 칸부터 차곡차곡 쌓여 있습니다. 게임 사용자는 크레인을 좌우로 움직여서 멈춘 위치에서 가장 위에 있는 인형을 집어 올릴 수 있습니다. 집어 올린 인형은 바구니에 쌓이게 되는 데, 이때 바구니의 가..
[java] level1 / 정렬 / K번째수 [문제 설명] 배열 array의 i번째 숫자부터 j번째 숫자까지 자르고 정렬했을 때, k번째에 있는 수를 구하려 합니다. 예를 들어 array가 [1, 5, 2, 6, 3, 7, 4], i = 2, j = 5, k = 3이라면 array의 2번째부터 5번째까지 자르면 [5, 2, 6, 3]입니다. 1에서 나온 배열을 정렬하면 [2, 3, 5, 6]입니다. 2에서 나온 배열의 3번째 숫자는 5입니다. 배열 array, [i, j, k]를 원소로 가진 2차원 배열 commands가 매개변수로 주어질 때, commands의 모든 원소에 대해 앞서 설명한 연산을 적용했을 때 나온 결과를 배열에 담아 return 하도록 solution 함수를 작성해주세요. [제한사항] array의 길이는 1 이상 100 이하입니..
[java] level1 / 탐욕법(Greedy) / 체육복 [문제 설명] 점심시간에 도둑이 들어, 일부 학생이 체육복을 도난당했습니다. 다행히 여벌 체육복이 있는 학생이 이들에게 체육복을 빌려주려 합니다. 학생들의 번호는 체격 순으로 매겨져 있어, 바로 앞번호의 학생이나 바로 뒷번호의 학생에게만 체육복을 빌려줄 수 있습니다. 예를 들어, 4번 학생은 3번 학생이나 5번 학생에게만 체육복을 빌려줄 수 있습니다. 체육복이 없으면 수업을 들을 수 없기 때문에 체육복을 적절히 빌려 최대한 많은 학생이 체육수업을 들어야 합니다. 전체 학생의 수 n, 체육복을 도난당한 학생들의 번호가 담긴 배열 lost, 여벌의 체육복을 가져온 학생들의 번호가 담긴 배열 reserve가 매개변수로 주어질 때, 체육수업을 들을 수 있는 학생의 최댓값을 return 하도록 solution 함..
[java] level1 / 완전탐색 / 모의고사 [문제 설명] 수포자는 수학을 포기한 사람의 준말입니다. 수포자 삼인방은 모의고사에 수학 문제를 전부 찍으려 합니다. 수포자는 1번 문제부터 마지막 문제까지 다음과 같이 찍습니다. 1번 수포자가 찍는 방식: 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, ... 2번 수포자가 찍는 방식: 2, 1, 2, 3, 2, 4, 2, 5, 2, 1, 2, 3, 2, 4, 2, 5, ... 3번 수포자가 찍는 방식: 3, 3, 1, 1, 2, 2, 4, 4, 5, 5, 3, 3, 1, 1, 2, 2, 4, 4, 5, 5, ... 1번 문제부터 마지막 문제까지의 정답이 순서대로 들은 배열 answers가 주어졌을 때, 가장 많은 문제를 맞힌 사람이 누구인지 배열에 담아 return 하도록 solution 함수를..
[java] level 1 / Hash / 완주하지 못한 선수 [문제 설명] 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지 못한 선수의 이름을 return 하도록 solution 함수를 작성해주세요. [제한사항] 마라톤 경기에 참여한 선수의 수는 1명 이상 100,000명 이하입니다. completion의 길이는 participant의 길이보다 1 작습니다. 참가자의 이름은 1개 이상 20개 이하의 알파벳 소문자로 이루어져 있습니다. 참가자 중에는 동명이인이 있을 수 있습니다. [입출력 예] participant completion return [leo, ..
JAVA / startsWith() / endsWith() / 접두사 접미사 체크 함수 1. startsWith() ​ 자바에는 ~로 시작하는 문자열인지 혹은 ~로 끝나는 문자열인지를 체크하는 함수가 있음. 접두사 / 접미사를 체크할 때 사용할 수 있음. ​ startsWith() : ~로 시작하는 문자열이면 true / 아니면 false endsWith() : ~로 끝나는 문자열이면 true / 아니면 false ​ contains() 의 경우, 특정 단어가 포함되는지를 알려줌. SQL에서 like '%aaa%' 와 같은 존재. ​ String name = "elly" name.contains("ll"); // true name.contaions("le") // false ​ 만약 name 이 el로 시작하는지 체크하고 싶다면, name.startsWith("el"); 로 사용하면 됨. ..
맥 Mac 이클립스 설치하기 / 맥 Mac 자바 설치 / 맥 Mac 자바 제어판 #Mac #맥북 #Eclipse설치하기 #Intellij #인텔리J 사서 쓰면 좋지만 무료로 이용하고 싶다면 #이클립스 사용하면 됨. 1. JDK 설치 1.1 설치 #Java #자바 를 사용하기 위한 #JDK 를 먼저 설치 https://www.java.com/ko/download/help/mac_install.xml 위의 링크는 자바 공식 홈페이지. 여기 들어가면 설명을 자세하게 읽어볼 수 있음. 위의 링크로 들어가서 자바 설치하면 됨. 위의 링크로 들어가서 '동의 및 무료 다운로드 시작' 버튼을 누름. 별도의 회원가입 없이 바로 jre dmg 파일 다운로드 됨. 다운로드 완료되면 dmg 파일 실행. 파일 실행 시, 인터넷에서 다운로드 된 앱이라는 알림창이 나옴. 열기 버튼을 누름. 그러면 관리자 암호..