https://softeer.ai/practice/7698
구현은 위의 풀이처럼 하면 된다.
구현보다 출력형식이 더 까다로웠던 것 같다.
▼출력형식
해당 이미지처럼 출력 사이에 공백이 포함되어 있다.
따라서 5표(++++)앞에 공백을 넣어주고 sb.append(" ++++");
|표 출력 전 공백을 넣어줘서 sb.append(" ");
trim()을 통해 앞뒤 공백을 제거하도록 하였다.
|표가 없을경우도 뒤에 공백 한개가 추가되기 때문에
ex) 5표 = (공백)++++(공백)
(공백) : sb.append(" ++++");
(공백) : sb.append(" ");
이후 앞뒤 공백은 trim으로 제거된다.
마찬가지로 ++++표가 없는 1(한표)의 경우도
(공백)|
이런식으로 완성되어 trim()을 통해 (양쪽) 공백을 자르면 | 한개만 완성된다.
- trim() : 양쪽 공백 제거
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int T = Integer.parseInt(br.readLine());
for(int t = 0; t < T; t++) {
int n = Integer.parseInt(br.readLine());
StringBuilder sb = new StringBuilder();
int count_5 = n / 5;
int count_one = n % 5;
for(int i = 0; i < count_5; i++) {
sb.append(" ++++");
}
sb.append(" ");
for(int i = 0; i < count_one; i++) {
sb.append("|");
}
System.out.println(sb.toString().trim());
}
}
}