Algorithm/백준 단계별로 풀어보기
[백준 단계별로 풀어보기-심화] 별 찍기 - 7 (JAVA)
JunFe
2024. 3. 20. 13:40
반응형
문제
예제를 보고 규칙을 유추한 뒤에 별을 찍어 보세요.
입력
첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다.
출력
첫째 줄부터 2×N-1번째 줄까지 차례대로 별을 출력한다.
예제 입출력
입력 | 출력 |
5 | * *** ***** ******* ********* ******* ***** *** * |
풀이
-> 이런 문제는 n 값에 따른 그림이나 숫자를 적어보면서 변화하는 부분을 보고 그 다음에 코드를 작성해본다.
위와 같이 적어보았고, 다이아몬드를 한번에 그리지 않고, 중간부분까지 큰 삼각형과 아래부분 뒤집어진 작은 삼각형을 따로 그렸다. 코드를 보면 나눠진 부분은 확인할 수 있다.
코드
import java.util.Scanner;
public class Main {
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
sc.close();
for(int i=0;i<num;i++){
// start make diamond by *
for(int j=0;j<num-i-1;j++){
System.out.print(" ");
}
for(int j=0;j<2*i+1;j++){
System.out.print("*");
}
System.out.println();
}
for(int i=num-1;i>0;i--){
for(int j=num-i;j>0;j--){
System.out.print(" ");
}
for(int j=2*i-1;j>0;j--){
System.out.print("*");
}
System.out.println();
}
}
}
반응형