반응형

Programmers 76

프로그래머스 - 공원 산책 JAVA :: 172928

문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/172928 문제 이해하기 시작은 어떤 공간에서든 할 수 있다. 대각선으로는 이동할 수 없고, 동서남북으로만 이동할 수 있다. 장애물이 있는 곳으로는 이동할 수 없으며, 이동할 수 없는 경우는 해당 명령은 아예 취소한다. 외부로 벗어나는 경우는 이동할 수 없으며, 이동할 수 없는 경우는 해당 명령은 아예 취소한다. 문제 풀이 boolean[][] parkFull = new boolean[park.length][park[0].length()]; int x = 0, y = 0; int xWall = parkFull.length, yWall = parkFull[0].length; for(int i..

Algorithm/Java 2023.08.24

프로그래머스 - 햄버거 만들기 JAVA :: 133502

문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/133502 문제 이해하기 재료의 순서는 무조건 [빵, 야채, 고기, 빵] 순서가 되어야 하고, 그 재료를 빼더라도 남은 재료의 순서는 보존해야 하는게 핵심입니다. 예제를 보면 [야채, 빵, 빵, 야채, 고기, 빵, 야채, 고기, 빵] 3번째부터 [빵, 야채, 고기, 빵]이 첫 번째 햄버거가 됩니다. 첫 번째 햄버거의 재료를 제외하면 [야채, 빵, 야채, 고기, 빵]이 남게 됩니다. 2번째부터 [빵, 야채, 고기, 빵]이 두 번째 햄버거가 됩니다. 재료가 담긴 배열을 순서대로 수행하면서 햄버거가 완성되면 재료를 빼고 기존 재료들은 기억하고 있으면서, 다음 재료를 순서대로 가져오면 됩니다. 예..

Algorithm/Java 2023.08.02

프로그래머스 - 개인정보 수집 유효기간 JAVA :: 2023 KAKAO BLIND RECRUITMENT :: 150370

문제 문제 링크 코딩테스트 연습 - 개인정보 수집 유효기간 | 프로그래머스 스쿨 (programmers.co.kr) 문제 설명 고객의 약관 동의를 얻어서 수집된 1~n번으로 분류되는 개인정보 n개가 있습니다. 약관 종류는 여러 가지 있으며 각 약관마다 개인정보 보관 유효기간이 정해져 있습니다. 당신은 각 개인정보가 어떤 약관으로 수집됐는지 알고 있습니다. 수집된 개인정보는 유효기간 전까지만 보관 가능하며, 유효기간이 지났다면 반드시 파기해야 합니다. 예를 들어, A라는 약관의 유효기간이 12 달이고, 2021년 1월 5일에 수집된 개인정보가 A약관으로 수집되었다면 해당 개인정보는 2022년 1월 4일까지 보관 가능하며 2022년 1월 5일부터 파기해야 할 개인정보입니다.당신은 오늘 날짜로 파기해야 할 개..

Algorithm/Java 2023.01.09

프로그래머스 - 크기가 작은 부분 문자열 JAVA :: 147355

문제 문제링크 코딩테스트 연습 - 크기가 작은 부분 문자열 | 프로그래머스 스쿨 (programmers.co.kr) 문제 설명 숫자로 이루어진 문자열 t와 p가 주어질 때, t에서 p와 길이가 같은 부분문자열 중에서, 이 부분문자열이 나타내는 수가 p가 나타내는 수보다 작거나 같은 것이 나오는 횟수를 return하는 함수 solution을 완성하세요. 예를 들어, t="3141592"이고 p="271" 인 경우, t의 길이가 3인 부분 문자열은 314, 141, 415, 159, 592입니다. 이 문자열이 나타내는 수 중 271보다 작거나 같은 수는 141, 159 2개 입니다. 제한사항 1 ≤ p의 길이 ≤ 18 p의 길이 ≤ t의 길이 ≤ 10,000 t와 p는 숫자로만 이루어진 문자열이며, 0으로 ..

Algorithm/Java 2022.12.23

프로그래머스 - 푸드 파이트 대회 JAVA :: 134240

문제 문제 링크 코딩테스트 연습 - 푸드 파이트 대회 | 프로그래머스 스쿨 (programmers.co.kr) 문제 설명 수웅이는 매달 주어진 음식을 빨리 먹는 푸드 파이트 대회를 개최합니다. 이 대회에서 선수들은 1대 1로 대결하며, 매 대결마다 음식의 종류와 양이 바뀝니다. 대결은 준비된 음식들을 일렬로 배치한 뒤, 한 선수는 제일 왼쪽에 있는 음식부터 오른쪽으로, 다른 선수는 제일 오른쪽에 있는 음식부터 왼쪽으로 순서대로 먹는 방식으로 진행됩니다. 중앙에는 물을 배치하고, 물을 먼저 먹는 선수가 승리하게 됩니다. 이때, 대회의 공정성을 위해 두 선수가 먹는 음식의 종류와 양이 같아야 하며, 음식을 먹는 순서도 같아야 합니다. 또한, 이번 대회부터는 칼로리가 낮은 음식을 먼저 먹을 수 있게 배치하여 ..

Algorithm/Java 2022.12.22

프로그래머스 - 삼총사 JAVA :: 131705

문제 문제 링크 코딩테스트 연습 - 삼총사 | 프로그래머스 스쿨 (programmers.co.kr) 문제 설명 한국중학교에 다니는 학생들은 각자 정수 번호를 갖고 있습니다. 이 학교 학생 3명의 정수 번호를 더했을 때 0이 되면 3명의 학생은 삼총사라고 합니다. 예를 들어, 5명의 학생이 있고, 각각의 정수 번호가 순서대로 -2, 3, 0, 2, -5일 때, 첫 번째, 세 번째, 네 번째 학생의 정수 번호를 더하면 0이므로 세 학생은 삼총사입니다. 또한, 두 번째, 네 번째, 다섯 번째 학생의 정수 번호를 더해도 0이므로 세 학생도 삼총사입니다. 따라서 이 경우 한국중학교에서는 두 가지 방법으로 삼총사를 만들 수 있습니다. 한국중학교 학생들의 번호를 나타내는 정수 배열 number가 매개변수로 주어질 때..

Algorithm/Java 2022.12.21

프로그래머스 - 콜라 문제 JAVA :: 132267

문제 문제 링크 코딩테스트 연습 - 콜라 문제 | 프로그래머스 스쿨 (programmers.co.kr) 문제 설명 오래전 유행했던 콜라 문제가 있습니다. 콜라 문제의 지문은 다음과 같습니다. 정답은 아무에게도 말하지 마세요. 콜라 빈 병 2개를 가져다주면 콜라 1병을 주는 마트가 있다. 빈 병 20개를 가져다주면 몇 병을 받을 수 있는가? 단, 보유 중인 빈 병이 2개 미만이면, 콜라를 받을 수 없다. 문제를 풀던 상빈이는 콜라 문제의 완벽한 해답을 찾았습니다. 상빈이가 푼 방법은 아래 그림과 같습니다. 우선 콜라 빈 병 20병을 가져가서 10병을 받습니다. 받은 10병을 모두 마신 뒤, 가져가서 5병을 받습니다. 5병 중 4병을 모두 마신 뒤 가져가서 2병을 받고, 또 2병을 모두 마신 뒤 가져가서 1..

Algorithm/Java 2022.12.20

프로그래머스 - 옹알이 (2) JAVA :: 133499

문제링크 코딩테스트 연습 - 옹알이 (2) | 프로그래머스 스쿨 (programmers.co.kr) 문제 이해하기 발음할 수 있는 단어는 “aya”, “ye”, “woo”, “ma” 4개의 단어 뿐이다. 중복되어 나열된 단어는 발음할 수 없다. 불가능 : “ayaaya”, “yeye”, “woowoo”, “mamama” 가능 : “ayaye”, “wooma”, “mawoo”, “yemawoo”, “mawooma” 중복되지만 않고, 발음할 수 있는 단어만 나열되면 된다. 문제풀이 1번 풀이 (스택) 이전 단어의 중복을 체크하기 위해 Stack을 활용 import java.util.ArrayList; import java.util.List; import java.util.Stack; public class ..

Algorithm/Java 2022.12.19

프로그래머스 - 숫자 짝꿍 JAVA :: 131128

문제링크 숫자 짝꿍 | 프로그래머스 스쿨 (programmers.co.kr) 문제 이해하기 3 ≤ X, Y의 길이(자릿수) ≤ 3,000,000입니다. 나름 신경 쓴다고 썼는데 이것 때문에 시간을 많이 날렸다. 단순히 삼백만이 아니라 자릿수 삼백만이다… 어마어마한 숫자가 올 수 있다는 뜻 같은 수가 중복될 수 있다. X = "5255", Y = "1255"일 중복되는 수는 2, 5, 5이다. 주의할 점은 X의 5는 3개이지만 Y에는 2개만 있으므로 5는 2개만 짝꿍이다. 짝꿍이 없다면 "-1"을 반환한다. 기본적으로 숫자 개념이므로 "000..."같은 수는 없으므로 0으로 시작하면 0을 반환한다. 문제풀이 1번 풀이 (시간초과) import java.util.Arrays; public String sol..

Algorithm/Java 2022.12.13

프로그래머스 - 성격 유형 검사하기 :: 2022 KAKAO TECH INTERNSHIP :: 118666

문제 링크 프로그래머스 - 성격 유형 검사하기 문제 이해하기 성격 유형 종류는 총 8개로 고정이다. 지표 번호 성격 유형 1번 R, T 2번 C, F 3번 J, M 4번 A, N 점수는 총 7개로 분류된다. 매우 비동의, 비동의, 약간 비동의, 모르겠음, 약간 동의, 동의, 매우 동의 단, input 데이터에 따라 어느 곳에 점수를 부여해야 하는지 달라진다. 배열 survey에는 성격 유형 종류 8개 중 각 지표가 쌍으로 들어간다. 각 지표끼리만 입력 받을 수 있고 지표내의 성격 유형 순서는 바뀔 수 있다. R, F: 이런 지문은 존재하지 않는다. (R, T, T, R) 각 지문의 성격 유형 순서는 바뀔 수 있다. 배열 survey와 choices의 요소는 1vs1로 매칭되는 요소이다. 점수는 세 가지 ..

Algorithm/Java 2022.08.26
반응형