✅ 별 찍기 패턴 정리 (표)
| 패턴 유형 | 공백 개수 | 별 개수 | 공백 개수 반복문 (j 조건) |
별 개수 반복문 (j 조건) |
| 왼쪽 정렬 | 0 (없음) | i + 1 | 없음 (공백 없음) | j <= i |
| 오른쪽 정렬 | n - i - 1 | i + 1 | j < n - i - 1 | j < i + 1 |
| 역삼각형 | 0 (없음) | n - i | 없음 (공백 없음) | j < n - i |
| 오른쪽 정렬된 역삼각형 |
i | n - i | j < i | j < n - i |
| 피라미드 (위쪽 + 아래쪽) |
n - i - 1 | 2 * i + 1 | j < n - i - 1 | j < 2 * i + 1 |
✅ 유형 1: 왼쪽 정렬
*
**
***
****
*****
for (int i = 0; i < n; i++) { // 행
for (int j = 0; j <= i; j++) { // 열 (별 개수 = 행 번호 + 1)
System.out.print("*");
}
System.out.println();
}
- i = 0 → *
- i = 1 → **
- i = 2 → ***
- 별 개수 = i + 1
✅ 유형 2: 오른쪽 정렬
*
**
***
****
*****
for (int i = 0; i < n; i++) { // 행
for (int j = 0; j < n; j++) { // 열
if (j < n - i - 1) // 공백 출력 조건
System.out.print(" ");
else
System.out.print("*");
}
System.out.println();
}
- 공백 개수 = n - i - 1
- 별 개수 = i + 1
✅ 유형 3: 역삼각형
*****
****
***
**
*
for (int i = 0; i < n; i++) { // 행
for (int j = 0; j < n - i; j++) { // 열 (별 개수 감소)
System.out.print("*");
}
System.out.println();
}
- i = 0 → *****
- i = 1 → ****
- i = 2 → ***
- 별 개수 = n - i
✅ 유형 4: 오른쪽으로 정렬된 역삼각형
*****
****
***
**
*
for (int i = 0; i < n; i++) {
for (int j = 0; j < i; j++) // 공백 출력
System.out.print(" ");
for (int j = 0; j < n - i; j++) // 별 출력
System.out.print("*");
System.out.println();
}
- 공백 개수 = i
- 별 개수 = n - i
- 공백을 먼저 찍고 별을 출력해서 오른쪽 정렬을 만든다.
✅ 유형 5: 피라미드
*
***
*****
*******
*********
*******
*****
***
*
for (int i = 0; i < n; i++) { // 위쪽 삼각형
for (int j = 0; j < n - i - 1; j++)
System.out.print(" "); // 공백
for (int j = 0; j < 2 * i + 1; j++)
System.out.print("*"); // 별
System.out.println();
}
for (int i = n - 2; i >= 0; i--) { // 아래쪽 역삼각형
for (int j = 0; j < n - i - 1; j++)
System.out.print(" "); // 공백
for (int j = 0; j < 2 * i + 1; j++)
System.out.print("*"); // 별
System.out.println();
}
- 위쪽 삼각형: 2 * i + 1개의 별을 출력
- 아래쪽 삼각형: 2 * i + 1개의 별을 점점 줄여서 출력
- 공백은 n - i - 1개를 출력하여 정렬 맞추기
'개발인생 > Altorithm' 카테고리의 다른 글
| [알고리즘 기초 100제] 15. 369게임 (0) | 2025.03.12 |
|---|---|
| [알고리즘 기초 100제] 14. 거듭제곱 (0) | 2025.03.12 |
| [알고리즘 기초 100제] 13. 별찍기 (0) | 2025.03.11 |
| [알고리즘 기초 100제] 12. 구구단 (0) | 2025.03.11 |
| [알고리즘 기초 100제] 11. 숫자 개수 출력 (0) | 2025.03.11 |