Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- 깃허브
- CRUD
- HashSet
- 캡슐화
- 파이썬
- 코드업
- 부트캠프
- 상속
- DTO
- SQL
- 알고리즘
- html tag
- @NoArgsConstructor
- 자바
- Python
- @builder
- entity
- github
- Codeup
- HTML
- 기본생성자
- 브랜치
- lv1
- 에러
- stringbuffer
- 프로그래머스
- git
- java
- 부스트코스
- @AllArgsConstructor
Archives
- Today
- Total
잉?
[프로그래머스] lv.1 2016년 (JAVA 자바) 본문
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
첫 번째 풀이 - [19.56ms - 28.69ms]
- Calendar 인스턴스 생성
- set()을 이용하여 구하고자 하는 년, 월, 일 입력
- getDisplayName로 요일을 텍스트로 리턴
두 번째 풀이 - [0.02ms - 0.07ms]
- dat배열에 요일, date배열에 달의 수를 입력
- 구하고자 하는 요일까지 더한 후 7일로 나눈 나머지 리턴
첫 번째 풀이 코드
public String solution(int a, int b) {
// Calendar 인스턴스 생성
Calendar calendar = Calendar.getInstance();
// Calendar 월은 0부터 시작
calendar.set(2016, a-1, b);
// getDisplayName: 요일을 텍스트로 리턴
return calendar.getDisplayName(Calendar.DAY_OF_WEEK, Calendar.SHORT, Locale.US).toUpperCase();
}
java.util.Calendar 클래스
Calendar 클래스는 자바에서 날짜와 시간에 관한 데이터를 손쉽게 처리할 수 있도록 제공하는 추상 클래스입니다.
이 클래스가 추상 클래스로 선언된 이유는 나라마다 사용하는 달력 체계가 조금씩 다를 수 있기 때문입니다.
Month가 1부터 시작하는 게 아니라 0부터 시작한다는 불편한 점이 있습니다.
public String getDisplayName(int field, int style, Locale locale)
DAY_OF_WEEK의 리턴되는 숫자는 1~7로, 1은 일요일, 7은 토요일을 나타냅니다.
Calendar 클래스의 getDisplayName() 메서드는파라미터로 전달받은 field의 값을 style과 locale을 적용하여 텍스트로 리턴합니다.
두 번째 풀이 코드
public String solution(int a, int b) {
// 2016년 1월 첫요일이 금요일
String[] day = {"FRI", "SAT", "SUN", "MON", "TUE", "WED", "THU"};
int[] date = { 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
int allDate = 0;
// date 배열이 0부터 시작해서 해당 달은 포함 X
for (int i = 0; i < a-1; i++) {
allDate += date[i];
}
// allDate가 0부터 시작해서 -1
allDate += (b-1);
return day[allDate % 7];
}
'알고리즘_Algorism > 프로그래머스' 카테고리의 다른 글
[프로그래머스] lv.1 추억 점수 (JAVA 자바) (0) | 2023.08.08 |
---|---|
[프로그래머스] lv.1 콜라 문제 (JAVA 자바) (0) | 2023.08.04 |
[프로그래머스] lv.1 푸드 파이트 대회 (JAVA 자바) (0) | 2023.08.02 |
[프로그래머스] 두 개 뽑아서 더하기 (JAVA 자바) (0) | 2023.07.31 |
[프로그래머스] 문자열 내 마음대로 정렬하기 (JAVA 자바) (0) | 2023.07.27 |
Comments