2446번
문제
- 모래시계 모양으로 별을 출력하는 문제
- 아래는 3을 입력 받았을 때 예시
` * *** * *** * ` ##### 문제 해결 순서 1. 가장 큰 반복문은 2*n-1 만큼 돌아야한다. 2. i는 0 ~ 9까지 돌며 i가 time보다 작을 때, 크거나 같을 때 두 경우로 나눈다. 3. 작을 경우 모래시계 윗 부분을 출력한다. 4. 크거나 같을 경우 모래시계 아랫 부분을 출력한다.
(1차 삽질 그냥 삼각형 2개로 나눠서 출력할걸 그랬다.. 반복문 하나 안에서 해보려다 결국 더 안 좋은 코드를 짠 듯 하다..)
import java.util.Scanner;
class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int time = scan.nextInt();
for(int i = 1; i <= time * 2 - 1; i ++){
if(i >= time){
int j = (time * 2 - 1) - i;
while(j > 0){
System.out.print(" ");
j--;
}
for(int k = 0; k < (i * 2) - (time * 2 - 1); k++){
System.out.print("*");
}
}
else{
int j = 0;
while(j < i-1){
System.out.print(" ");
j++;
}
for(int k = (time * 2) - (i * 2); k >= 0; k--){
System.out.print("*");
}
}
System.out.println();
}
}
}