본문 바로가기
  • Jetpack 알아보기
프로그래머스 - JAVA/Level 1

[JAVA] 프로그래머스 Lv.1 : 직사각형 별찍기

by 새우버거♬ 2021. 3. 31.

 

예제:

 

n m result
5 3 *****
*****
*****
2 3 **
**
**

 

제한 조건:

  • n과 m은 각각 1000 이하인 자연수입니다.

Solution #1

import java.io.*;
import java.util.StringTokenizer;

public class Solution {
    public static void main(String[] args) {
        try {
            BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
            BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));

            StringTokenizer tokenizer = new StringTokenizer(br.readLine());

            int n = Integer.parseInt(tokenizer.nextToken());
            int m = Integer.parseInt(tokenizer.nextToken());

            for (int i = 0; i < m; i++) {
                for (int j = 0; j < n; j++) {
                    bw.write("*");
                }
                bw.write("\n");
            }

            bw.flush();
            bw.close();
            br.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

 

Result #1

 

💡 속도를 향상시키기 위해 버퍼를 사용하였다. 속도 비교를 위해 Scanner 예제도 작성해보자. 

 


Solution #2

import java.util.Scanner;

public class Solution {
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    int a = sc.nextInt();
    int b = sc.nextInt();
    for(int i=0; i<b; i++){
      for(int j = 0; j<a; j++){
      System.out.print("*");
      }
      System.out.print("\n");
    }        
  }
}

 

Result #2

 

💡 Scanner 를 사용해서 풀 경우, 속도가 더 느린 것을 확인할 수 있다.

 


 

More Algorithm!

 

👇👇

 

github.com/ggujangi/ggu.programmers

 

ggujangi/ggu.programmers

프로그래머스 알고리즘, JAVA. Contribute to ggujangi/ggu.programmers development by creating an account on GitHub.

github.com

 

 

출처 : 프로그래머스