프로그래밍/알고리즘(36)
-
[프로그래머스] [Level1] 문자열 내 p와 y의 개수 - Java
💁♀️ 링크 programmers.co.kr/learn/courses/30/lessons/12916 📃 문제 대문자와 소문자가 섞여있는 문자열 s가 주어집니다. s에 'p'의 개수와 'y'의 개수를 비교해 같으면 True, 다르면 False를 return 하는 solution를 완성하세요. 'p', 'y' 모두 하나도 없는 경우는 항상 True를 리턴합니다. 단, 개수를 비교할 때 대문자와 소문자는 구별하지 않습니다. 제한사항 문자열 s의 길이 : 50 이하의 자연수 문자열 s는 알파벳으로만 이루어져 있습니다. 🐾 문제풀이 문자열에서 'P'와 'Y' 의 개수가 동일하면 True, 다르면 False를 리턴하는 간단한 문제이다. num이라는 int변수에 'P'개수만큼 +1을 해주고, 'Y'개수만큼 -1을 ..
2020.12.28 -
[프로그래머스] [Level1] 두 정수 사이의 합 - Java
💁♀️ 링크 programmers.co.kr/learn/courses/30/lessons/12912 📃 문제 두 정수 a, b가 주어졌을 때 a와 b 사이에 속한 모든 정수의 합을 리턴하는 함수, solution을 완성하세요. 예를 들어 a = 3, b = 5인 경우, 3 + 4 + 5 = 12이므로 12를 리턴합니다. 제한 조건 a와 b가 같은 경우는 둘 중 아무 수나 리턴하세요. a와 b는 -10,000,000 이상 10,000,000 이하인 정수입니다. a와 b의 대소관계는 정해져있지 않습니다. 🐾 문제풀이 Math.min(a,b) 과 Math.max(a,b) 를 사용해서 min, max 값을 가져올 수 있다. 💻 코드 class Solution { public long solution(int a..
2020.12.26 -
[프로그래머스] [Level1] 나누어 떨어지는 숫자 배열 - Java
💁♀️ 링크 programmers.co.kr/learn/courses/30/lessons/12910 📃 문제 array의 각 element 중 divisor로 나누어 떨어지는 값을 오름차순으로 정렬한 배열을 반환하는 함수, solution을 작성해주세요. divisor로 나누어 떨어지는 element가 하나도 없다면 배열에 -1을 담아 반환하세요. 제한사항 arr은 자연수를 담은 배열입니다. 정수 i, j에 대해 i ≠ j 이면 arr[i] ≠ arr[j] 입니다. divisor는 자연수입니다. array는 길이 1 이상인 배열입니다. 입출력 예 arr divisor return [5, 9, 7, 10] 5 [5, 10] [2, 36, 1, 3] 1 [1, 2, 3, 36] [3,2,6] 10 [-1]..
2020.12.26 -
[프로그래머스] [Level1] 가운데 글자 가져오기 - Java
💁♀️ 링크 programmers.co.kr/learn/courses/30/lessons/12903 📃 문제 단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다. 🐾 문제풀이 substring() 메소드를 사용하여 특정위치의 문자열을 반환 받을 수 있다. String substring(int beginIndex) - beginIndex부터 끝까지 반환 String substring(int beginIndex, int endIndex) -beginIndex부터 endIndex직전까지의 문자열 반환 String str = "ABCDEF"; str.substring(3) => 결과값: DEF str.substring(3,5) =>..
2020.12.26 -
[프로그래머스] [Level1] 3진법 뒤집기 - Java
💁♀️ 링크 programmers.co.kr/learn/courses/30/lessons/68935 📃 문제 자연수 n이 매개변수로 주어집니다. n을 3진법 상에서 앞뒤로 뒤집은 후, 이를 다시 10진법으로 표현한 수를 return 하도록 solution 함수를 완성해주세요. 입출력 예 #1 답을 도출하는 과정은 다음과 같습니다. n (10진법) n (3진법) 앞뒤 반전(3진법) 10진법으로 표현 45 1200 0021 7 (return 값) 🐾 문제풀이 10진법에서 3진법으로 바꾸는 과정을 생략하고, 앞뒤반전 3진법 수를 temp배열에 바로 넣어서 풀이 💻 코드 import java.util.*; class Solution { public int solution(int n) { int answer =..
2020.12.26 -
[프로그래머스] [Level1] K번째수 - Java
💁♀️ 링크 programmers.co.kr/learn/courses/30/lessons/42748 📃 문제 배열 array의 i번째 숫자부터 j번째 숫자까지 자르고 정렬했을 때, k번째에 있는 수를 구하려 합니다. 예를 들어 array가 [1, 5, 2, 6, 3, 7, 4], i = 2, j = 5, k = 3이라면 array의 2번째부터 5번째까지 자르면 [5, 2, 6, 3]입니다. 1에서 나온 배열을 정렬하면 [2, 3, 5, 6]입니다. 2에서 나온 배열의 3번째 숫자는 5입니다. 배열 array, [i, j, k]를 원소로 가진 2차원 배열 commands가 매개변수로 주어질 때, commands의 모든 원소에 대해 앞서 설명한 연산을 적용했을 때 나온 결과를 배열에 담아 return 하도..
2020.12.26