-
프로그래머스 코딩테스트(ad 제거하기, 특별한 이차원 배열 2, 배열 비교하기)코딩테스트 2023. 5. 14. 22:39
<ad 제거하기>
문제 설명
문자열 배열 strArr가 주어집니다. 배열 내의 문자열 중 "ad"라는 부분 문자열을 포함하고 있는 모든 문자열을 제거하고 남은 문자열을 순서를 유지하여 배열로 return 하는 solution 함수를 완성해 주세요.풀이
class Solution {
public String[] solution(String[] strArr) {
String s = "";
for(String str:strArr){
if(!str.contains("ad")){
s+=str+",";
}
}
return s.split(",");
}
}<특별한 이차원 배열 2>
문제 설명
n × n 크기의 이차원 배열 arr이 매개변수로 주어질 때, arr이 다음을 만족하면 1을 아니라면 0을 return 하는 solution 함수를 작성해 주세요.
0 ≤ i, j < n인 정수 i, j에 대하여 arr[i][j] = arr[j][i]풀이
class Solution {
public int solution(int[][] arr) {
int answer = 0;
int length = arr[0].length;
for(int i=0;i<length;i++){
for(int j=0;j<length;j++){
if(arr[i][j]==arr[j][i]){
answer = 1;
} else {
return 0;
}
}
}
return answer;
}
}<배열 비교하기>
문제 설명
이 문제에서 두 정수 배열의 대소관계를 다음과 같이 정의합니다.
두 배열의 길이가 다르다면, 배열의 길이가 긴 쪽이 더 큽니다.
배열의 길이가 같다면 각 배열에 있는 모든 원소의 합을 비교하여 다르다면 더 큰 쪽이 크고, 같다면 같습니다.
두 정수 배열 arr1과 arr2가 주어질 때, 위에서 정의한 배열의 대소관계에 대하여 arr2가 크다면 -1, arr1이 크다면 1, 두 배열이 같다면 0을 return 하는 solution 함수를 작성해 주세요.풀이
class Solution {
public int solution(int[] arr1, int[] arr2) {
if(arr1.length!=arr2.length){
if(arr1.length>arr2.length){
return 1;
} else return -1;
} else {
int sum1 = 0;
int sum2 = 0;
for(int i:arr1){
sum1+=i;
}
for(int j:arr2){
sum2+=j;
}
if(sum1>sum2){
return 1;
} else if(sum2>sum1){
return -1;
} else return 0;
}
}
}'코딩테스트' 카테고리의 다른 글
프로그래머스 코딩테스트(모스부호 (1), x사이의 개수, 배열 만들기 3) (1) 2023.05.17 프로그래머스 코딩테스트(배열의 원소 삭제하기, 가까운 1 찾기, 중복된 문자 제거) (0) 2023.05.15 프로그래머스 코딩테스트(문자열 정렬하기 (2), 할 일 목록, 콜라츠 수열 만들기) (0) 2023.05.13 프로그래머스 코딩테스트(주사위 게임 2, l로 만들기, 9로 나눈 나머지) (0) 2023.05.12 프로그래머스 코딩테스트(0 떼기, 합성수 찾기, 5명씩) (0) 2023.05.11