Algorithm88 [Lv. 0] 문자열 정렬하기 (1) 📕 문제 설명 문자열 my_string이 매개변수로 주어질 때, my_string 안에 있는 숫자만 골라 오름차순 정렬한 리스트를 return 하도록 solution 함수를 작성해보세요. ❗ 제한 사항 1 ≤ my_string의 길이 ≤ 100 my_string에는 숫자가 한 개 이상 포함되어 있습니다. my_string은 영어 소문자 또는 0부터 9까지의 숫자로 이루어져 있습니다 ✏️ 작성한 코드 class Solution { public int[] solution(String my_string) { int[] answer = {}; answer = Arrays.stream(my_string.replaceAll("[^0-9]", "") .split("")) .sorted() .mapToInt(Integ.. Algorithm/프로그래머스 2023. 3. 16. [Lv.1] 평균 구하기 📕 문제 설명 정수를 담고 있는 배열 arr의 평균값을 return하는 함수, solution을 완성해보세요. ❗ 제한 사항 arr은 길이 1 이상, 100 이하인 배열입니다. arr의 원소는 -10,000 이상 10,000 이하인 정수입니다. ✏️ 작성한 코드 class Solution { public double solution(int[] arr) { double answer = 0; double sum = 0; for(int i: arr){ sum += i; } answer = sum/arr.length; return answer; } } 🤔 느낀 점 처음 풀었을 땐 그냥 for문을 썼는데 이번엔 향상된 for문을 사용했다. 한번씩 향상된 for문 쓰면서 sum += arr[i] 이런식으로 사용하는.. Algorithm/프로그래머스 2023. 3. 14. [Lv. 0] 대문자와 소문자 📕 문제 설명 문자열 my_string이 매개변수로 주어질 때, 대문자는 소문자로 소문자는 대문자로 변환한 문자열을 return하도록 solution 함수를 완성해주세요. ❗ 제한 사항 1 ≤ my_string의 길이 ≤ 1,000 my_string은 영어 대문자와 소문자로만 구성되어 있습니다. ✏️ 작성한 코드 class Solution { public String solution(String my_string) { String answer = ""; for(int i = 0; i < my_string.length(); i++){ if(Character.isUpperCase(my_string.charAt(i))){ answer += Character.toLowerCase(my_string.charAt(.. Algorithm/프로그래머스 2023. 3. 14. [Lv. 1] 약수의 개수와 덧셈 📕 문제 설명 두 정수 left와 right가 매개변수로 주어집니다. left부터 right까지의 모든 수들 중에서, 약수의 개수가 짝수인 수는 더하고, 약수의 개수가 홀수인 수는 뺀 수를 return 하도록 solution 함수를 완성해주세요. ❗ 제한 사항 1 ≤ left ≤ right ≤ 1,000 ✏️ 작성한 코드 class Solution { public int solution(int left, int right) { int answer = 0; int cnt = 1; for(int i = left; i Algorithm/프로그래머스 2023. 2. 3. [Lv. 2] JadenCase 문자열 만들기 📕 문제설명 JadenCase란 모든 단어의 첫 문자가 대문자이고, 그 외의 알파벳은 소문자인 문자열입니다. 단, 첫 문자가 알파벳이 아닐 때에는 이어지는 알파벳은 소문자로 쓰면 됩니다. (첫 번째 입출력 예 참고) 문자열 s가 주어졌을 때, s를 JadenCase로 바꾼 문자열을 리턴하는 함수, solution을 완성해주세요. ❗ 제한 조건 s는 길이 1 이상 200 이하인 문자열입니다. s는 알파벳과 숫자, 공백문자(" ")로 이루어져 있습니다. 숫자는 단어의 첫 문자로만 나옵니다. 숫자로만 이루어진 단어는 없습니다. 공백문자가 연속해서 나올 수 있습니다. ✏️ 작성한 코드 요것도 2트했다 :( 얘도 좀 멍청하게 자료형을 혼합해서 써서 문제가 생겼었다 class Solution { public Str.. Algorithm/프로그래머스 2023. 1. 16. [Lv. 2] 최댓값과 최솟값 📕 문제 설명 문자열 s에는 공백으로 구분된 숫자들이 저장되어 있습니다. str에 나타나는 숫자 중 최소값과 최대값을 찾아 이를 "(최소값) (최대값)"형태의 문자열을 반환하는 함수, solution을 완성하세요. 예를들어 s가 "1 2 3 4"라면 "1 4"를 리턴하고, "-1 -2 -3 -4"라면 "-4 -1"을 리턴하면 됩니다. ❗ 제한 조건 s에는 둘 이상의 정수가 공백으로 구분되어 있습니다. ✏️작성한 코드 1트에 시도한 코드 처음엔 이렇게 정렬하고 조건을 줬었는데 음수들은 생각대로 되지 않았다 import java.util.*; class Solution { public String solution(String s) { String answer = ""; List list = new Array.. Algorithm/프로그래머스 2023. 1. 16. [Lv. 1] 기사단원의 무기 📕 문제 설명 숫자나라 기사단의 각 기사에게는 1번부터 number까지 번호가 지정되어 있습니다. 기사들은 무기점에서 무기를 구매하려고 합니다. 각 기사는 자신의 기사 번호의 약수 개수에 해당하는 공격력을 가진 무기를 구매하려 합니다. 단, 이웃나라와의 협약에 의해 공격력의 제한수치를 정하고, 제한수치보다 큰 공격력을 가진 무기를 구매해야 하는 기사는 협약기관에서 정한 공격력을 가지는 무기를 구매해야 합니다. 예를 들어, 15번으로 지정된 기사단원은 15의 약수가 1, 3, 5, 15로 4개 이므로, 공격력이 4인 무기를 구매합니다. 만약, 이웃나라와의 협약으로 정해진 공격력의 제한수치가 3이고 제한수치를 초과한 기사가 사용할 무기의 공격력이 2라면, 15번으로 지정된 기사단원은 무기점에서 공격력이 2인.. Algorithm/프로그래머스 2023. 1. 15. [Lv. 1] 문자열 내 마음대로 정렬하기 📕 문제 설명 문자열로 구성된 리스트 strings와, 정수 n이 주어졌을 때, 각 문자열의 인덱스 n번째 글자를 기준으로 오름차순 정렬하려 합니다. 예를 들어 strings가 ["sun", "bed", "car"]이고 n이 1이면 각 단어의 인덱스 1의 문자 "u", "e", "a"로 strings를 정렬합니다. ❗ 제한 조건 strings는 길이 1 이상, 50이하인 배열입니다. strings의 원소는 소문자 알파벳으로 이루어져 있습니다. strings의 원소는 길이 1 이상, 100이하인 문자열입니다. 모든 strings의 원소의 길이는 n보다 큽니다. 인덱스 1의 문자가 같은 문자열이 여럿 일 경우, 사전순으로 앞선 문자열이 앞쪽에 위치합니다. ✏️ 작성한 코드 import java.util.*;.. Algorithm/프로그래머스 2023. 1. 14. [LV. 1] 삼총사 .📕 문제 설명 한국중학교에 다니는 학생들은 각자 정수 번호를 갖고 있습니다. 이 학교 학생 3명의 정수 번호를 더했을 때 0이 되면 3명의 학생은 삼총사라고 합니다. 예를 들어, 5명의 학생이 있고, 각각의 정수 번호가 순서대로 -2, 3, 0, 2, -5일 때, 첫 번째, 세 번째, 네 번째 학생의 정수 번호를 더하면 0이므로 세 학생은 삼총사입니다. 또한, 두 번째, 네 번째, 다섯 번째 학생의 정수 번호를 더해도 0이므로 세 학생도 삼총사입니다. 따라서 이 경우 한국중학교에서는 두 가지 방법으로 삼총사를 만들 수 있습니다. 한국중학교 학생들의 번호를 나타내는 정수 배열 number가 매개변수로 주어질 때, 학생들 중 삼총사를 만들 수 있는 방법의 수를 return 하도록 solution 함수를 완.. Algorithm/프로그래머스 2023. 1. 13. [LV. 1] 나누어 떨어지는 숫자 배열 📚 문제 설명 array의 각 element 중 divisor로 나누어 떨어지는 값을 오름차순으로 정렬한 배열을 반환하는 함수, solution을 작성해주세요. divisor로 나누어 떨어지는 element가 하나도 없다면 배열에 -1을 담아 반환하세요. ❗ 제한 조건 arr은 자연수를 담은 배열입니다. 정수 i, j에 대해 i ≠ j 이면 arr[i] ≠ arr[j] 입니다. divisor는 자연수입니다. array는 길이 1 이상인 배열입니다. ✏ 작성한 코드 import java.util.*; class Solution { public int[] solution(int[] arr, int divisor) { int[] answer = {}; ArrayList list = new ArrayList().. Algorithm/프로그래머스 2023. 1. 7. [LV.1]자연수 뒤집어 배열로 만들기 📚 문제 설명 자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다. ❗ 제한 조건 n은 10,000,000,000이하인 자연수입니다. ✏ 작성한 코드 class Solution { public int[] solution(long n) { String a = "" + n; int[] answer = new int[a.length()]; int cnt = 0; while (n > 0) { answer[cnt] = (int) (n % 10); n /= 10; cnt++; } return answer; } } 🤔 느낀점 Exception in thread "main" java.lang.ArrayIndexOutOfBoundsE.. Algorithm/프로그래머스 2023. 1. 7. 1926. 간단한 369 게임 📕 문제 3 6 9 게임을 프로그램으로 제작중이다. 게임 규칙은 다음과 같다. 1. 숫자 1부터 순서대로 차례대로 말하되, “3” “6” “9” 가 들어가 있는 수는 말하지 않는다. 1 2 3 4 5 6 7 8 9… 2. "3" "6" "9"가 들어가 있는 수를 말하지 않는대신, 박수를 친다. 이 때, 박수는 해당 숫자가 들어간 개수만큼 쳐야 한다. 예를 들어 숫자 35의 경우 박수 한 번, 숫자 36의 경우 박수를 두번 쳐야 한다. 입력으로 정수 N 이 주어졌을 때, 1~N 까지의 숫자를 게임 규칙에 맞게 출력하는 프로그램을 작성하라. 박수를 치는 부분은 숫자 대신, 박수 횟수에 맞게 “-“ 를 출력한다. 여기서 주의해야 할 것은 박수 한 번 칠 때는 - 이며, 박수를 두 번 칠 때는 - - 가 아닌 .. Algorithm/SWEA 2022. 11. 15. 이전 1 ··· 4 5 6 7 8 다음