BOJ 별찍기 로직

FinalForever·2025년 12월 10일
post-thumbnail

한줄출력

public class Star0 {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		
		int N = sc.nextInt();
		
		for(int i = 0; i < N; i++) {
			System.out.println("*");
		}
			sc.close();
			}	
		}

2438

BOJ 2438

import java.util.*;

public class Star1  {

	public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    
    int N = sc.nextInt();
    
    for(int i = 1; i <= N; i++) {
			for(int j = 0; j < i; j++) {
			System.out.print("*");
		}
			System.out.println();
			sc.close();
			}	
		}
	}
    

I는 별개수
J는 반복횟수
System.out.println(); 다음 줄로 넘어가기 위해 사용

ij
10
21
32
43
54

2439

BOJ 2438

import java.util.*;

public class Star2  {

	public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    
    int N = sc.nextInt();
    
    for(int i = 1; i <= N; i++) {
			for(int j = 0; j < N - i; j++) {
			System.out.print(" ");
		}
        for(int k = 1; k <= i; k++) {
        	System.out.print("*");
        }
			System.out.println();
            }
			sc.close();
			}	
		}
	}

i = 줄바꿈 횟수
j = 공백 출력 N - i
k = 별개수

ijk
141
232
323
414
505

2440

BOJ 2440

import java.util.*;

public class Star3 {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		
		int N = sc.nextInt();
		
		for(int i=1; i<=N; i++) {
			for(int j=0; j<=N-i; j++) {
				System.out.print("*");
		}
			System.out.println();
		}
			sc.close();
			} 
		}	

조금 더 응용해서
i = 줄번호
j = 별횟수


2441

BOJ 2441

import java.util.*;

public class Star4 {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		
		int N = sc.nextInt();
		
		for(int i=1; i<=N; i++) {
			for(int j=1; j<=i-1; j++) {
				System.out.print(" ");
		}
        for(int k=1; k<=N-i+1; k++) {
            System.out.print("*");
        }        
		System.out.println();
		}
			sc.close();
			} 
		}	

i=줄개수
j=공백
k=별

ijk
155
244
333
422
511

트리모양

BOJ 2442

import java.util.*;

public class Star5 {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		
		int N = sc.nextInt();
		
		for(int i=1; i<=N; i++) {
			for(int j=1; j<=N-i; j++) {
				System.out.print(" ");
			}
			for(int k=1; k<=i*2-1; k++) {
				System.out.print("*");
		}
		System.out.println();
		}
			sc.close();
			} 
		}	

i=줄개수
j=공백
k=별개수


트리모양(리버스)

BOJ 2443

import java.util.*;

public class Star6 {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		
		int N = sc.nextInt();
		
		for(int i = 1; i<=N; i++) {
			for(int j =1; j<=i-1; j++) {
				System.out.print(" ");
			}
			for(int k=1; k<=2*(N-i)+1; k++) {
				System.out.print("*");
		}
		System.out.println();
		}
			sc.close();
			} 
		}	
		

j<=i-1 공백
k<=2*(N-i)+1 별개수


다이아모양

BOJ 2444

import java.util.*;

public class Star6 {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		
		int N = sc.nextInt();
		
		//정방향
		for(int i=1; i<=N; i++) {
			for(int j=0; j<N-i; j++)
				System.out.print(" ");	
			for(int k=0; k<i*2-1; k++) 
				System.out.print("*");
			System.out.println();
		}
			
		//역방향	
		for(int i=N-1; i>=0; i--) {
			for(int j=0; j<N-i; j++)
				System.out.print(" ");
			for(int k=0; k<i*2-1; k++) 
				System.out.print("*");
			System.out.println();
			}
            sc.close();
		}
	}

i=줄개수
j=공백
k=별개수


FF7rebirth 별에 바치는 기도도 못받았는데 ...

ps. 조금어려웟어요(아니 많이 어려웠어요 ㅜㅜ)/ 주말 조금 생각하고 패드로 적고 또 밥먹다가도 시도했는데 잘 안되어서 저 강의를 봤습니다... ㅜㅜ

profile
No More Struggle & Machine Mind

0개의 댓글