알고리즘 공부

[java] 프로그래머스 코딩테스트 1단계 문제(행렬의 덧셈,핸드폰 번호가리기

2sangmin 2022. 3. 19.

[행렬의 덧셈]

문제 설명

행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요.

제한 조건
  • 행렬 arr1, arr2의 행과 열의 길이는 500을 넘지 않습니다.
입출력 예arr1arr2return
[[1,2],[2,3]] [[3,4],[5,6]] [[4,6],[7,9]]
[[1],[2]] [[3],[4]] [[4],[6]]

 

코드

class Solution {
    public int[][] solution(int[][] arr1, int[][] arr2) 
    { 
        int[][] answer = new int[arr1.length][arr1[0].length];
        for(int i=0;i<arr1.length;i++)
        {
            for(int j=0;j<arr1[i].length;j++)
            {
               answer[i][j]=arr1[i][j]+arr2[i][j];
            }
        }
        return answer;
    }
}

 

  • 핸드폰 번호 가리기
문제 설명

 

프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다.
전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요.

제한 조건
  • s는 길이 4 이상, 20이하인 문자열입니다.
입출력 예phone_numberreturn
"01033334444" "*******4444"
"027778888" "*****8888"

 

코드

class Solution {
    public String solution(String phone_number) {
StringBuilder sb = new StringBuilder(phone_number);
for(int i=0;i<phone_number.length()-4;i++)
{
sb.setCharAt(i, '*');
}
        return sb.toString();
        //StringBuilder는 문자열을 뽑아낼 때 .toString()을 사용한다.
    }
}

 

 

댓글