[Java] 카드 뭉치
·
CodingTest/[프로그래머스] 자바
1. 문제 설명(1) 문제 설명코니는 영어 단어가 적힌 카드 뭉치 두 개를 선물로 받았습니다. 코니는 다음과 같은 규칙으로 카드에 적힌 단어들을 사용해 원하는 순서의 단어 배열을 만들 수 있는지 알고 싶습니다.원하는 카드 뭉치에서 카드를 순서대로 한 장씩 사용합니다.한 번 사용한 카드는 다시 사용할 수 없습니다.카드를 사용하지 않고 다음 카드로 넘어갈 수 없습니다.기존에 주어진 카드 뭉치의 단어 순서는 바꿀 수 없습니다.예를 들어 첫 번째 카드 뭉치에 순서대로 ["i", "drink", "water"],두 번째 카드 뭉치에 순서대로 ["want", "to"]가 적혀있을 때["i", "want", "to", "drink", "water"] 순서의 단어 배열을 만들려고 한다면첫 번째 카드 뭉치에서 "i"를 ..
[Java] 2016년
·
CodingTest
1. 문제 설명(1) 문제 설명 2016년 1월 1일은 금요일입니다. 2016년 a월 b일은 무슨 요일일까요?두 수 a ,b를 입력받아 2016년 a월 b일이 무슨 요일인지 리턴하는 함수, solution을 완성하세요.요일의 이름은 일요일부터 토요일까지 각각 SUN,MON,TUE,WED,THU,FRI,SAT입니다.예를 들어 a=5, b=24라면 5월 24일은 화요일이므로 문자열 "TUE"를 반환하세요.   (2) 제한 조건2016년은 윤년입니다.2016년 a월 b일은 실제로 있는 날입니다. (13월 26일이나 2월 45일같은 날짜는 주어지지 않습니다)   (3) 입출력 예abresult524"TUE"   2. 문제 해결(1) 문제 해결 접근문제는 날짜의 요일을 계산하는 것입니다.Java의 내장 라이브러리..
[Java] 푸드 파이트 대회
·
CodingTest/[프로그래머스] 자바
문제 설명수웅이는 매달 주어진 음식을 빨리 먹는 푸드 파이트 대회를 개최합니다. 이 대회에서 선수들은 1대 1로 대결하며, 매 대결마다 음식의 종류와 양이 바뀝니다. 대결은 준비된 음식들을 일렬로 배치한 뒤, 한 선수는 제일 왼쪽에 있는 음식부터 오른쪽으로, 다른 선수는 제일 오른쪽에 있는 음식부터 왼쪽으로 순서대로 먹는 방식으로 진행됩니다. 중앙에는 물을 배치하고, 물을 먼저 먹는 선수가 승리하게 됩니다.이때, 대회의 공정성을 위해 두 선수가 먹는 음식의 종류와 양이 같아야 하며, 음식을 먹는 순서도 같아야 합니다. 또한, 이번 대회부터는 칼로리가 낮은 음식을 먼저 먹을 수 있게 배치하여 선수들이 음식을 더 잘 먹을 수 있게 하려고 합니다. 이번 대회를 위해 수웅이는 음식을 주문했는데, 대회의 조건을 ..
[Java] 가장 가까운 같은 글자
·
CodingTest/[프로그래머스] 자바
문제 설명 문자열 s가 주어졌을 때, s의 각 위치마다 자신보다 앞에 나왔으면서,자신과 가장 가까운 곳에 있는 같은 글자가 어디 있는지 알고 싶습니다.예를 들어, s="banana"라고 할 때,  각 글자들을 왼쪽부터 오른쪽으로 읽어 나가면서 다음과 같이 진행할 수 있습니다.b는 처음 나왔기 때문에 자신의 앞에 같은 글자가 없습니다. 이는 -1로 표현합니다.a는 처음 나왔기 때문에 자신의 앞에 같은 글자가 없습니다. 이는 -1로 표현합니다.n은 처음 나왔기 때문에 자신의 앞에 같은 글자가 없습니다. 이는 -1로 표현합니다.a는 자신보다 두 칸 앞에 a가 있습니다. 이는 2로 표현합니다.n도 자신보다 두 칸 앞에 n이 있습니다. 이는 2로 표현합니다.a는 자신보다 두 칸, 네 칸 앞에 a가 있습니다. 이 ..
[Java] 두 개 뽑아서 더하기
·
CodingTest/[프로그래머스] 자바
문제 설명정수 배열 numbers가 주어집니다.numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서만들 수 있는 모든 수를 배열에 오름차순으로 담아 return 하도록 solution 함수를 완성해주세요. 제한사항numbers의 길이는 2 이상 100 이하입니다numbers의 모든 수는 0 이상 100 이하입니다. 입출력 예numbersresultnumbersresult[2,1,3,4,1][2,3,4,5,6,7][5,0,2,7][2,5,7,9,12] 입출력 예 설명입출력 예2 = 1 + 1 입니다. (1이 numbers에 두 개 있습니다.)3 = 2 + 1 입니다.4 = 1 + 3 입니다.5 = 1 + 4 = 2 + 3 입니다.6 = 2 + 4 입니다.7 = 3 + 4 입니다.따라서 [2..