728x90
너무 쉬운 문제를 골라버렸다
import java.util.Scanner;
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.println();
}
}
}
StringBuilder를 통해서도 풀 수 있다는 것을 알게 되었다.
import java.util.Scanner;
import java.util.stream.IntStream;
class Solution {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
int b = sc.nextInt();
StringBuilder sb = new StringBuilder();
IntStream.range(0,a).forEach(s -> sb.append("*"));
IntStream.range(0,b).forEach(s -> System.out.println(sb.toString()));
}
}
문자열을 이어줄 때 String은 불변이라서 생성된 문자열에 붙여 넣는 식으로 해서 붙이는 횟수가 많아질수록 느리다고 한다.
StringBuilder는 mutable이기 때문에 빠르다.
https://wakestand.tistory.com/245
너무 정리를 잘해놓으셔서 나중에 헷갈리면 이걸 다시 보면 될 거 같다 ^,^
728x90
'with my rubber duck > codingTest' 카테고리의 다른 글
[프로그래머스] 최솟값 만들기 풀어보기 (처음으로 2단계) (0) | 2022.06.24 |
---|---|
[프로그래머스] 소수만들기 풀어보기 (0) | 2022.06.22 |
[프로그래머스] 두 정수 사이의 합 (0) | 2022.06.10 |
[프로그래머스] 실패율 풀어보기^^~! (0) | 2022.06.09 |
[프로그래머스] 완주하지 못한 선수 (0) | 2022.06.06 |
댓글