alpyrithm_알파이리즘

[알고리즘][Java] 백준(BOJ) 2522 별 찍기 - 12_자바 본문

Algorithm/백준 알고리즘_Java

[알고리즘][Java] 백준(BOJ) 2522 별 찍기 - 12_자바

알파이 2021. 3. 15. 08:43

 

입출력

2522 별 찍기 - 12    www.acmicpc.net/problem/2522

 

2522번: 별 찍기 - 12

첫째 줄부터 2×N-1번째 줄까지 차례대로 별을 출력한다.

www.acmicpc.net

 

 

 

문제 풀기 전 공부할 것 : 입출력, 구현

 

 

 

 

 

 

 

풀이 1

<내용>

  • Scanner로 n을 입력받는다.
  • 가운데를 기준으로 위쪽과 아래쪽을 나눈다.
  • 위쪽은 1 - n 번째 줄까지 과정을 반복한다.
  • 한 줄에 총 출력해야 하는 개수는 n개다.
  • n-i개를 빈칸으로 출력하고 i개를 별(*)로 출력한다.
  • 아래쪽은 위쪽의 과정을 n-1, n-2, ..., 1의 순서로 반복한다.

 

 

<코드>

import java.util.Scanner;

public class Main {

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

	}

}

 

 

 

 

 

 



 

 

풀이 2

<내용>

  • Scanner로 n을 입력받는다.
  • 큰 틀은 위의 과정과 같지만 이중 for문을 1번만 사용하도록 생각해본다.
  • 한 줄에는 n개를 출력한다.
  • k라는 변수를 두고 빈칸과 별(*) 수를 조절한다.

 

 

<코드>

import java.util.Scanner;

public class Main {

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

	}

}

 

 

 

 

 

 

 

 

 

 

 

같은 문제 파이썬 풀이법

2020/03/17 - [Algorithm/백준 알고리즘_Python] - [알고리즘][Python] 백준(BOJ) 2438/2439/2440/2441/2442/2445/2522/2446/10991/10992 별 찍기 _ 파이썬

 

[알고리즘][Python] 백준(BOJ) 2438/2439/2440/2441/2442/2445/2522/2446/10991/10992 별 찍기 _ 파이썬

입출력(3) 알고리즘의 가장 기본인 입출력 문제들 2438 별 찍기 - 1  https://www.acmicpc.net/problem/2438 2438번: 별 찍기 - 1 첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제 www..

alpyrithm.tistory.com

 

 

728x90
반응형
Comments