본문 바로가기
728x90
반응형

개발/Coding Test - Java7

[Java] 프로그래머스 코딩테스트 - 오픈채팅방 (해시) 문제 설명 카카오톡 오픈채팅방에서는 친구가 아닌 사람들과 대화를 할 수 있는데, 본래 닉네임이 아닌 가상의 닉네임을 사용하여 채팅방에 들어갈 수 있다. 신입사원인 김크루는 카카오톡 오픈 채팅방을 개설한 사람을 위해, 다양한 사람들이 들어오고, 나가는 것을 지켜볼 수 있는 관리자창을 만들기로 했다.  채팅방에 누군가 들어오면 다음 메시지가 출력된다."[닉네임]님이 들어왔습니다." 채팅방에서 누군가 나가면 다음 메시지가 출력된다."[닉네임]님이 나갔습니다."  채팅방에서 닉네임을 변경하는 방법은 다음과 같이 두 가지이다.채팅방을 나간 후, 새로운 닉네임으로 다시 들어간다.채팅방에서 닉네임을 변경한다.닉네임을 변경할 때는 기존에 채팅방에 출력되어 있던 메시지의 닉네임도 전부 변경된다. 예를 들어, 채팅방에 ".. 2024. 8. 15.
[Java] 프로그래머스 코딩테스트 - 할인 행사 (해시) 문제 설명 XYZ 마트는 일정한 금액을 지불하면 10일 동안 회원 자격을 부여합니다. XYZ 마트에서는 회원을 대상으로 매일 한 가지 제품을 할인하는 행사를 합니다. 할인하는 제품은 하루에 하나씩만 구매할 수 있습니다. 알뜰한 정현이는 자신이 원하는 제품과 수량이 할인하는 날짜와 10일 연속으로 일치할 경우에 맞춰서 회원가입을 하려 합니다. 예를 들어, 정현이가 원하는 제품이 바나나 3개, 사과 2개, 쌀 2개, 돼지고기 2개, 냄비 1개이며, XYZ 마트에서 14일간 회원을 대상으로 할인하는 제품이 날짜 순서대로 치킨, 사과, 사과, 바나나, 쌀, 사과, 돼지고기, 바나나, 돼지고기, 쌀, 냄비, 바나나, 사과, 바나나인 경우에 대해 알아봅시다. 첫째 날부터 열흘 간에는 냄비가 할인하지 않기 때문에 첫.. 2024. 8. 15.
[Java] 프로그래머스 코딩테스트 - 두 개의 수로 특정값 만들기 (해시) 문제 설명n개의 양의 정수로 이루어진 배열 arr와 정수 target이 주어졌을 때 이 중에서 합이 target인 두 수가 arr에 있는지 찾고, 있으면 true, 없으면 false를 반환하는 solution() 함수를 작성하세요.  제한 조건n 은 2 이상 10,000 이하의 자연수입니다.arr 의 각 원소는 1 이상 10,000 이하의 자연수입니다.arr 의 원소 중 중복되는 원소는 없습니다.target 은 1 이상 20,000 이하의 자연수입니다.  입출력 예arrtargetreturn[1, 2, 3, 4, 8]6true[2, 3, 5, 9]10false  코드import java.util.*;class Solution { public boolean solution(int[] arr ,int .. 2024. 8. 15.
[Java] 프로그래머스 코딩테스트 - 요세푸스 문제 (큐) 문제 설명N명의 사람이 원 형태로 서 있습니다. 각 사람은 1부터 N까지 번호표를 갖고 있습니다. 그리고 임의의 숫자 K가 주어졌을 때 다음과 같이 사람을 없앱니다.1번 번호표 가진 사람을 기준으로 K번째 사람을 없앱니다.없앤 사람 다음 사람을 기준으로 하고 다시 K번째 사람을 없앱니다.  제한 조건N과 K는 1이상 1000이하의 자연수입니다.  입출력 예NKreturn523  코드import java.util.*;public class Solution { public int solution(int []arr) { int N = 5; int K = 2; // 큐를 사용해도 되지만, 직관적인 이해를 위하여 덱을 사용함. ArrayDequ.. 2024. 8. 13.
[Java] 프로그래머스 코딩테스트 - 괄호 회전하기 (스택) 문제 설명 다음 규칙을 지키는 문자열을 올바른 괄호 문자열이라고 정의합니다.(), [], {} 는 모두 올바른 괄호 문자열입니다.만약 A가 올바른 괄호 문자열이라면, (A), [A], {A} 도 올바른 괄호 문자열입니다. 예를 들어, [] 가 올바른 괄호 문자열이므로, ([]) 도 올바른 괄호 문자열입니다.만약 A, B가 올바른 괄호 문자열이라면, AB 도 올바른 괄호 문자열입니다. 예를 들어, {} 와 ([]) 가 올바른 괄호 문자열이므로, {}([]) 도 올바른 괄호 문자열입니다.대괄호, 중괄호, 그리고 소괄호로 이루어진 문자열 s가 매개변수로 주어집니다. 이 s를 왼쪽으로 x (0 ≤ x   제한사항s의 길이는 1 이상 1,000 이하입니다.  입출력 예sresult"[](){}"3"}]()[{"2.. 2024. 8. 12.
[Java] 프로그래머스 코딩테스트 - 10진수를 2진수로 변환하기 (스택) 문제 설명10진수를 입력받아 2진수로 변환해 반환하는 solution() 함수를 구현하시오. 제한 조건decimal 은 1이상 10억 미만의 자연수 입출력 예decimal반환 값10101027110111234511000000111001  코드import java.util.*;class Solution { public static String solution(int decimal) { Stack stack = new Stack(); while (decimal > 0) { int remainder = decimal % 2; stack.push(remainder); decimal /= 2; .. 2024. 8. 10.
728x90
반응형