알고리즘/Java

[JAVA] 프로그래머스 행렬의 덧셈, 2016년

유리코딩 2021. 11. 9. 16:03
반응형

알고리즘

JAVA 프로그래머스 행렬의 덧셈, 2016년


 

행렬의 덧셈

1. 문제

https://programmers.co.kr/learn/courses/30/lessons/12950

 

코딩테스트 연습 - 행렬의 덧셈

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

programmers.co.kr

 

2. 풀이

class Solution {
    public int[][] solution(int[][] arr1, int[][] arr2) {
        int[][] answer = new int[arr1.length][arr1[0].length];

        for(int i = 0; i < answer.length; i++) {
            for(int j = 0; j < answer[0].length; j++)
                answer[i][j] = arr1[i][j] + arr2[i][j];
        }
        return answer;
    }
}

 

 

2016년

1. 문제

https://programmers.co.kr/learn/courses/30/lessons/12901

 

코딩테스트 연습 - 2016년

2016년 1월 1일은 금요일입니다. 2016년 a월 b일은 무슨 요일일까요? 두 수 a ,b를 입력받아 2016년 a월 b일이 무슨 요일인지 리턴하는 함수, solution을 완성하세요. 요일의 이름은 일요일부터 토요일까

programmers.co.kr

 

2. 풀이

  • 특정날짜의 요일을 표시하는문제

      => 참고: https://yuricoding.tistory.com/entry/JAVA-%EB%82%A0%EC%A7%9C-%ED%91%9C%EC%8B%9C%ED%95%98%EA%B8%B0

import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.Locale;

class Solution {
    public String solution(int a, int b) {
        String answer = "";
        LocalDate targetDate = LocalDate.of(2016,a,b);
        // .ofPattern("E") : 한국일경우 월, 화, 수, ... 형식으로 출력
        // .withLocale(Locale.forLanguageTag("en") : 언어를 영어로 설정. Mon, Tue, Wed, ... 형식으로 출력
        DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("E").withLocale(Locale.forLanguageTag("en"));
        
        // 문제의 조건은 MON, TUE, WED, ... 형식으로 출력하는 것이었기 때문에 toUpperCase 적용
        answer = dateTimeFormatter.format(targetDate).toUpperCase();
        
        return answer;
    }
}

 

반응형