-
프로그래머스 코딩테스트(A로 B 만들기, 팩토리얼, 2차원으로 만들기)코딩테스트 2023. 5. 18. 14:37
<A로 B 만들기>
문제 설명
문자열 before와 after가 매개변수로 주어질 때, before의 순서를 바꾸어 after를 만들 수 있으면 1을, 만들 수 없으면 0을 return 하도록 solution 함수를 완성해보세요.풀이
import java.util.Arrays;
class Solution {
public int solution(String before, String after) {
char[] b = before.toCharArray();
char[] a = after.toCharArray();
Arrays.sort(b);
Arrays.sort(a);
if(Arrays.equals(b, a)){
return 1;
} else return 0;
}
}다른 사람 풀이
import java.util.Arrays; class Solution { public int solution(String before, String after) { char[] a = before.toCharArray(); char[] b = after.toCharArray(); Arrays.sort(a); Arrays.sort(b); return new String(a).equals(new String(b)) ? 1 :0; } }
<팩토리얼>
문제 설명
i팩토리얼 (i!)은 1부터 i까지 정수의 곱을 의미합니다. 예를들어 5! = 5 * 4 * 3 * 2 * 1 = 120 입니다. 정수 n이 주어질 때 다음 조건을 만족하는 가장 큰 정수 i를 return 하도록 solution 함수를 완성해주세요.
i! ≤ n풀이
class Solution {
public int solution(int n) {
int answer = 1;
int num = 1;
while(true){
num*=answer;
if(num>n) break;
answer++;
}
return answer-1;
}
}<2차원으로 만들기>
문제 설명
정수 배열 num_list와 정수 n이 매개변수로 주어집니다. num_list를 다음 설명과 같이 2차원 배열로 바꿔 return하도록 solution 함수를 완성해주세요.
num_list가 [1, 2, 3, 4, 5, 6, 7, 8] 로 길이가 8이고 n이 2이므로 num_list를 2 * 4 배열로 다음과 같이 변경합니다. 2차원으로 바꿀 때에는 num_list의 원소들을 앞에서부터 n개씩 나눠 2차원 배열로 변경합니다.
num_list n result
[1, 2, 3, 4, 5, 6, 7, 8] 2 [[1, 2], [3, 4], [5, 6], [7, 8]]풀이
class Solution {
public int[][] solution(int[] num_list, int n) {
int[][] answer = new int[num_list.length/n][n];
int num = 0;
for(int i=0;i<num_list.length/n;i++){
for(int j=0;j<n;j++){
answer[i][j] = num_list[num];
num++;
}
}
return answer;
}
}다른 사람 풀이
class Solution { public int[][] solution(int[] num_list, int n) { int[][] answer = {}; int length = num_list.length; answer = new int[length/n][n]; for(int i=0; i<length; i++){ answer[i/n][i%n]=num_list[i]; } return answer; } }
'코딩테스트' 카테고리의 다른 글
프로그래머스 코딩테스트(가까운 수, 등차수열의 특정한 항만 더하기, 문자열 잘라서 정렬하기) (0) 2023.05.19 프로그래머스 코딩테스트(두 수의 연산값 비교하기, k의 개수, 특별한 이차원 배열 1) (0) 2023.05.18 프로그래머스 코딩테스트(모스부호 (1), x사이의 개수, 배열 만들기 3) (1) 2023.05.17 프로그래머스 코딩테스트(배열의 원소 삭제하기, 가까운 1 찾기, 중복된 문자 제거) (0) 2023.05.15 프로그래머스 코딩테스트(ad 제거하기, 특별한 이차원 배열 2, 배열 비교하기) (0) 2023.05.14