![[백준] 25314 - 코딩은 체육과목 입니다](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbJv7ua%2FbtsyzbvkV9l%2FYCWpFmHIxsaiAmLIEs4xUK%2Fimg.png)
[백준] 25314 - 코딩은 체육과목 입니다알고리즘/백준2023. 10. 18. 00:29
Table of Contents
• 문제
깨알 상식 Java 기본형의 종류와 크기이다.
종류 | 크기 | 1byte | 2byte | 4byte | 8byte |
논리형 | boolean | - | - | - |
문자형 | - | char | - | - |
정수형 | byte | short | int | long |
실수형 | - | - | float | double |
문제에선 N의 값을 입력받고 4의 배수만큼 long을 출력하는 문제이다.
• 풀이
for문과 while문 두 가지 반복문을 사용하여 문제를 풀어보겠다.
for문
for문의 조건식만 설정해주면 정답을 얻을 수 있다 !
먼저 N의 값을 입력받고, 증감식을 먼저 생각해보자면
4의 배수이기때문에 i+=4를 해주면 4, 8, 12, 16, 20으로 4의 배수만큼 i가 증가하는 것을 알 수 있다.
조건식은 i <= N까지로 설정해주면된다.
N을 포함하는이유는 만약 N을 4의배수로 받았다면 N도 출력해야하기때문이고,
혹시라도 N이 4의 배수가 아니면 해당 값은 어차피 출력되지 않기때문에 i <= N으로 조건식을 설정해준다.
초기화식은 i=4와 같이 해주었다. 만약 i를 0으로 초기화해주면 i값은 증감식에 의해 0,4,8,12,16으로 증가하게되고 그러면 0의 대한 실행문도 실행되기때문에 "long"이 한번 더 출력될 것이다.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int N = sc.nextInt();
for(int i=4; i<=N; i+=4) {
System.out.print("long ");
}
System.out.println("int");
}
}
while문
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int N = sc.nextInt();
while(N>0) {
if(N%4 == 0)
System.out.print("long ");
N--;
}
System.out.print("int");
}
}
while문을 사용하면 if문이 사용되는데
4의 배수이면 long을 출력해야하므로 N의 4로나누었을때 나머지가 0이면 long을 출력한다.
그리고 N에 값을 하나씩 빼준다.
•마무리
단원이 반복문인만큼 되도록이면 반복문만으로 해결하기위해 for문을 이용한 풀이를 먼저 적어보았다.
728x90
'알고리즘 > 백준' 카테고리의 다른 글
[백준] 11021 - A+B -7 (0) | 2023.10.18 |
---|---|
[백준] 15552 - 빠른 A+B (0) | 2023.10.18 |
[백준] 25304 - 영수증 (0) | 2023.10.17 |
[백준] 8393 - 합 (0) | 2023.10.17 |
[백준] 10950 - A + B - 3 (0) | 2023.10.17 |
@leegeonwoo :: geonwoo
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!