본문 바로가기
반응형

코딩테스트156

[코딩테스트 Lv.0] 가까운 수 문제 설명 정수 배열 array와 정수 n이 매개변수로 주어질 때, array에 들어있는 정수 중 n과 가장 가까운 수를 return 하도록 solution 함수를 완성해주세요. 제한 사항 1 ≤ array의 길이 ≤ 100 1 ≤ array의 원소 ≤ 100 1 ≤ n ≤ 100 가장 가까운 수가 여러 개일 경우 더 작은 수를 return 합니다. 입출력 예 arraynresult [3, 10, 28]2028 [10, 11, 12]1312 입출력 예 설명 입출력 예 #1 3, 10, 28 중 20과 가장 가까운 수는 28입니다. 입출력 예 #2 10, 11, 12 중 13과 가장 가까운 수는 12입니다. 내 풀이 Java class Solution { public int solution(int[] ar.. 2024. 3. 13.
[코딩테스트 Lv.0] 삼각형의 완성조건 (1) 문제 설명 선분 세 개로 삼각형을 만들기 위해서는 다음과 같은 조건을 만족해야 합니다. 가장 긴 변의 길이는 다른 두 변의 길이의 합보다 작아야 합니다. 삼각형의 세 변의 길이가 담긴 배열 sides이 매개변수로 주어집니다. 세 변으로 삼각형을 만들 수 있다면 1, 만들 수 없다면 2를 return하도록 solution 함수를 완성해주세요. 제한 사항 sides의 원소는 자연수입니다. sides의 길이는 3입니다. 1 ≤ sides의 원소 ≤ 1,000 입출력 예 sidesresult [1, 2, 3]2 [3, 6, 2]2 [199, 72, 222]1 입출력 예 설명 입출력 예 #1 가장 큰 변인 3이 나머지 두 변의 합 3과 같으므로 삼각형을 완성할 수 없습니다. 따라서 2를 return합니다. 입출력.. 2024. 3. 13.
[코딩테스트 Lv.0] 중복된 문자 제거 문제 설명 문자열 my_string이 매개변수로 주어집니다. my_string에서 중복된 문자를 제거하고 하나의 문자만 남긴 문자열을 return하도록 solution 함수를 완성해주세요. 제한 사항 1 ≤ my_string ≤ 110 my_string은 대문자, 소문자, 공백으로 구성되어 있습니다. 대문자와 소문자를 구분합니다. 공백(" ")도 하나의 문자로 구분합니다. 중복된 문자 중 가장 앞에 있는 문자를 남깁니다. 입출력 예 my_stringresult "people""peol" "We are the world""We arthwold" 입출력 예 설명 입출력 예 #1 "people"에서 중복된 문자 "p"와 "e"을 제거한 "peol"을 return합니다. 입출력 예 #2 "We are the w.. 2024. 3. 13.
[코딩테스트 Lv.0] k의 개수 문제 설명 1부터 13까지의 수에서, 1은 1, 10, 11, 12, 13 이렇게 총 6번 등장합니다. 정수 i, j, k가 매개변수로 주어질 때, i부터 j까지 k가 몇 번 등장하는지 return 하도록 solution 함수를 완성해주세요. 제한 사항 1 ≤ i < j ≤ 100,000 0 ≤ k ≤ 9 입출력 예 ijkresult 11316 105055 31020 입출력 예 설명 입출력 예 #1 본문과 동일합니다. 입출력 예 #2 10부터 50까지 5는 15, 25, 35, 45, 50 총 5번 등장합니다. 따라서 5를 return 합니다. 입출력 예 #3 3부터 10까지 2는 한 번도 등장하지 않으므로 0을 return 합니다. 내 풀이 Java class Solution { public int s.. 2024. 3. 12.
[코딩테스트 Lv.0] A로 B 만들기 문제 설명 문자열 before와 after가 매개변수로 주어질 때, before의 순서를 바꾸어 after를 만들 수 있으면 1을, 만들 수 없으면 0을 return 하도록 solution 함수를 완성해보세요. 제한 사항 0 < before의 길이 == after의 길이 < 1,000 before와 after는 모두 소문자로 이루어져 있습니다. 입출력 예 beforeafterresult "olleh""hello"1 "allpe""apple"0 입출력 예 설명 입출력 예 #1 "olleh"의 순서를 바꾸면 "hello"를 만들 수 있습니다. 입출력 예 #2 "allpe"의 순서를 바꿔도 "apple"을 만들 수 없습니다. 내 풀이 Java import java.util.*; class Solution { .. 2024. 3. 12.
[코딩테스트 Lv.0] 이진수 더하기 문제 설명 이진수를 의미하는 두 개의 문자열 bin1과 bin2가 매개변수로 주어질 때, 두 이진수의 합을 return하도록 solution 함수를 완성해주세요. 제한 사항 return 값은 이진수를 의미하는 문자열입니다. 1 ≤ bin1, bin2의 길이 ≤ 10 bin1과 bin2는 0과 1로만 이루어져 있습니다. bin1과 bin2는 "0"을 제외하고 0으로 시작하지 않습니다. 입출력 예 bin1bin2result "10""11""101" "1001""1111""11000" 입출력 예 설명 입출력 예 #1 10 + 11 = 101 이므로 "101" 을 return합니다. 입출력 예 #2 1001 + 1111 = 11000 이므로 "11000"을 return합니다. 내 풀이 Java class Sol.. 2024. 3. 12.
[코딩테스트 Lv.1] 같은 숫자는 싫어 문제 설명 배열 arr가 주어집니다. 배열 arr의 각 원소는 숫자 0부터 9까지로 이루어져 있습니다. 이때, 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하려고 합니다. 단, 제거된 후 남은 수들을 반환할 때는 배열 arr의 원소들의 순서를 유지해야 합니다. 예를 들면, arr = [1, 1, 3, 3, 0, 1, 1] 이면 [1, 3, 0, 1] 을 return 합니다. arr = [4, 4, 4, 3, 3] 이면 [4, 3] 을 return 합니다. 배열 arr에서 연속적으로 나타나는 숫자는 제거하고 남은 수들을 return 하는 solution 함수를 완성해 주세요. 제한 사항 배열 arr의 크기 : 1,000,000 이하의 자연수 배열 arr의 원소의 크기 : 0보다 크거나.. 2024. 3. 11.
[코딩테스트 Lv.0] 치킨 쿠폰 문제 설명 프로그래머스 치킨은 치킨을 시켜먹으면 한 마리당 쿠폰을 한 장 발급합니다. 쿠폰을 열 장 모으면 치킨을 한 마리 서비스로 받을 수 있고, 서비스 치킨에도 쿠폰이 발급됩니다. 시켜먹은 치킨의 수 chicken이 매개변수로 주어질 때 받을 수 있는 최대 서비스 치킨의 수를 return하도록 solution 함수를 완성해주세요. 제한 사항 chicken은 정수입니다. 0 ≤ chicken ≤ 1,000,000 입출력 예 chickenresult 10011 1,081120 입출력 예 설명 입출력 예 #1 100마리를 주문하면 쿠폰이 100장 발급되므로 서비스 치킨 10마리를 주문할 수 있습니다. 10마리를 주문하면 쿠폰이 10장 발급되므로 서비스 치킨 1마리를 주문할 수 있습니다. 따라서 10 + 1.. 2024. 3. 9.
[코딩테스트 Lv.0] 로그인 성공? 문제설명 머쓱이는 프로그래머스에 로그인하려고 합니다. 머쓱이가 입력한 아이디와 패스워드가 담긴 배열 id_pw와 회원들의 정보가 담긴 2차원 배열 db가 주어질 때, 다음과 같이 로그인 성공, 실패에 따른 메시지를 return하도록 solution 함수를 완성해주세요. 아이디와 비밀번호가 모두 일치하는 회원정보가 있으면 "login"을 return합니다. 로그인이 실패했을 때 아이디가 일치하는 회원이 없다면 “fail”를, 아이디는 일치하지만 비밀번호가 일치하는 회원이 없다면 “wrong pw”를 return 합니다. 제한 사항 회원들의 아이디는 문자열입니다. 회원들의 아이디는 알파벳 소문자와 숫자로만 이루어져 있습니다. 회원들의 패스워드는 숫자로 구성된 문자열입니다. 회원들의 비밀번호는 같을 수 있지만.. 2024. 3. 8.
[코딩테스트 Lv.0] 등수 매기기 문제 설명 영어 점수와 수학 점수의 평균 점수를 기준으로 학생들의 등수를 매기려고 합니다. 영어 점수와 수학 점수를 담은 2차원 정수 배열 score가 주어질 때, 영어 점수와 수학 점수의 평균을 기준으로 매긴 등수를 담은 배열을 return하도록 solution 함수를 완성해주세요. 제한 사항 0 ≤ score[0], score[1] ≤ 100 1 ≤ score의 길이 ≤ 10 score의 원소 길이는 2입니다. score는 중복된 원소를 갖지 않습니다. 입출력 예 scoreresult [[80, 70], [90, 50], [40, 70], [50, 80]][1, 2, 4, 3] [[80, 70], [70, 80], [30, 50], [90, 100], [100, 90], [100, 100], [10,.. 2024. 3. 6.
[코딩테스트 Lv.0] 특이한 정렬 문제설명 정수 n을 기준으로 n과 가까운 수부터 정렬하려고 합니다. 이때 n으로부터의 거리가 같다면 더 큰 수를 앞에 오도록 배치합니다. 정수가 담긴 배열 numlist와 정수 n이 주어질 때 numlist의 원소를 n으로부터 가까운 순서대로 정렬한 배열을 return하도록 solution 함수를 완성해주세요. 제한 사항 1 ≤ n ≤ 10,000 1 ≤ numlist의 원소 ≤ 10,000 1 ≤ numlist의 길이 ≤ 100 numlist는 중복된 원소를 갖지 않습니다. 입출력 예 numlistnresult [1, 2, 3, 4, 5, 6]4[4, 5, 3, 6, 2, 1] [10000,20,36,47,40,6,10,7000]30[36, 40, 20, 47, 10, 6, 7000, 10000] 입출.. 2024. 3. 5.
[코딩테스트 Lv.1] 가운데 글자 가져오기 문제 설명 단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다. 제한 사항 s는 길이가 1 이상, 100이하인 스트링입니다. 입출력 예 sreturn "abcde""c" "qwer""we" 내 풀이 Java class Solution { public String solution(String s) { String answer = ""; int len = s.length(); if(len % 2 == 0){ answer = s.substring(len / 2 - 1, len / 2 + 1); }else{ answer = s.substring(len / 2, len / 2 + 1); } return answer; } } C #inc.. 2024. 3. 5.
[코딩테스트 Lv.1] 2016년 문제 설명 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"를 반환하세요. 제한 조건 2016년은 윤년입니다. 2016년 a월 b일은 실제로 있는 날입니다. (13월 26일이나 2월 45일같은 날짜는 주어지지 않습니다) 입출력 예 abresult 524"TUE" 내 풀이 Java class Solution { public String solution(int a, int b) { String an.. 2024. 3. 5.
[코딩테스트 Lv.0] 유한소수 판별하기 문제 설명 소수점 아래 숫자가 계속되지 않고 유한개인 소수를 유한소수라고 합니다. 분수를 소수로 고칠 때 유한소수로 나타낼 수 있는 분수인지 판별하려고 합니다. 유한소수가 되기 위한 분수의 조건은 다음과 같습니다. ● 기약분수로 나타내었을 때, 분모의 소인수가 2와 5만 존재해야 합니다. 두 정수 a와 b가 매개변수로 주어질 때, a/b가 유한소수이면 1을, 무한소수라면 2를 return하도록 solution 함수를 완성해주세요. 제한 사항 a, b는 정수 0 < a ≤ 1,000 0 < b ≤ 1,000 입출력 예 abresult 7201 11221 12212 입출력 설명 입출력 예 #1 분수 7/20은 기약분수 입니다. 분모 20의 소인수가 2, 5 이기 때문에 유한소수입니다. 따라서 1을 retur.. 2024. 3. 5.
[코딩테스트 Lv.0] 겹치는 선분의 길이 문제 설명 선분 3개가 평행하게 놓여 있습니다. 세 선분의 시작과 끝 좌표가 [[start, end], [start, end], [start, end]] 형태로 들어있는 2차원 배열 lines가 매개변수로 주어질 때, 두 개 이상의 선분이 겹치는 부분의 길이를 return 하도록 solution 함수를 완성해보세요.lines가 [[0, 2], [-3, -1], [-2, 1]]일 때 그림으로 나타내면 다음과 같습니다. 선분이 두 개 이상 겹친 곳은 [-2, -1], [0, 1]로 길이 2만큼 겹쳐있습니다. 제한사항 lines의 길이 = 3 lines의 원소의 길이 = 2 모든 선분은 길이가 1 이상입니다. lines의 원소는 [a, b] 형태이며, a, b는 각각 선분의 양 끝점 입니다. -100 ≤ a .. 2024. 3. 1.
728x90
반응형