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 | 31 |
Tags
- 보이는 학생
- 점수계산
- 누적 계산
- 백준
- array
- 등수구하기
- 가장 짧은 문자거리
- 투 포인터
- 자바
- 10991
- 큰 수 출력하기
- 최대 길이
- 연속부분수열
- 알고리즘
- 격자판
- java
- Two Pointer
- 임시반장 정하기
- 모든행과열대각선의합
- ArrayList
- 배열
- 코테준비
- 뒤집은 소수
- 아스키코드
- 인프런
- 10992
- GitHub #Commit #BaekJoon
- Pointer
- 공통원소 구하기
- 두 배열 합치기
Archives
- Today
- Total
ezhoon
[백준] 1924_ 2007년_Java 본문
⚠️ 주의사항
- 2월은 28일까지만
- 달과 날짜가 한 줄에 출력 및 빈칸으로 구분
처음에는 어떻게 풀까 하다가 3월 28일이면 1월 2월의 일을 전부 다 더하고 28일을 더 한 다음 7로 나눠서 나온 값을 배열중에 찾아서 출력하면 될 것 같다.
문제풀이
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class InputOutput_1924 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine(), " ");
StringBuilder sb = new StringBuilder();
int monthNum = Integer.parseInt(st.nextToken());
int dayNum = Integer.parseInt(st.nextToken());
int[] month = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
String[] day = {"SUN", "MON", "TUE", "WED", "THU", "FRI", "SAT"};
int cnt = 0;
for (int i = 0; i < monthNum; i++) {
cnt = cnt + month[i];
}
cnt = cnt + dayNum;
sb.append(day[cnt % 7]);
System.out.println(sb);
}
}
int[] month = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
여기서 0부터 시작하는 3월을 입력하면 3월의 일수는 더하면 안되기 때문에 처음에는 month[0]에는 0을 집어 넣어서 3월 까지면 2월의 일까지만 더해지게끔 했습니다.
'[Java] 백준 문제풀이 > 입출력과 사칙연산' 카테고리의 다른 글
[백준] 2441_별 찍기 - 4_Java (0) | 2022.01.11 |
---|---|
[백준] 2438_별 찍기 - 3_Java (0) | 2022.01.11 |
[백준] 11721_열 개씩 끊어 출력하기_Java (0) | 2022.01.10 |
[백준] 11718_그대로 출력하기_Java (0) | 2022.01.10 |
[백준] 2588_Java (0) | 2022.01.02 |
Comments