관리 메뉴

NineTwo meet you

[백준] 10993 별 찍기 - 18 본문

프로그래밍 문제/백준

[백준] 10993 별 찍기 - 18

NineTwo 2020. 6. 26. 21:15
반응형

출처


문제

예제를 보고 규칙을 유추한 뒤에 별을 찍어 보세요.

입력

첫째 줄에 N(1 ≤ N ≤ 10)이 주어진다.

출력

첫째 줄부터 차례대로 별을 출력한다.

예제


풀이

index가 3부터 n이 될때까지 증가하며 index값이 짝수일때와 홀수일때 각각 하는일이 다르다.

 

​짝수일때 하는 일 // 역삼각형 만들기

 

우선 이전에 만든 삼각형모양의 도형이 존재한다. (파란 삼각형)

(짝수 그림 1)

더보기

 

짝수 그림 1

       

1. 이전 삼각형의 ArrayList.size()-1인덱스 값 양쪽에 *을 추가한다.

(짝수 그림 2)

더보기

 

짝수 그림 2

     

 2. 이전 삼각형 맨 뒤부터 *(count 개수만큼 빈칸)*을 추가하고 마지막 제일 아래에 꼭짓점이 되는 *을 추가한다.

(짝수 그림 3)

더보기

 

짝수 그림 3

       

3. 이전 삼각형을 *(count 개수만큼 빈칸)(원래 삼각형)(count 개수만큼 빈칸)*으로 교체한다.

(짝수 그림 4)

더보기
짝수 그림 4

       

4.맨 윗줄에 가득찬 *줄을 추가한다.

(짝수 그림 5)

더보기
짝수 그림 5

 

홀수 일때 하는 일 // 삼각형 만들기

우선 이전에 만든 삼각형모양의 도형이 존재한다. (파란 삼각형)

(홀수 그림 1)

더보기
홀수 그림 1

 

1. 이전 삼각형의 0인덱스 값 양쪽에 *을 추가한다.

(홀수 그림 2)

더보기
홀수 그림 2

 

2. 이전 삼각형을 *(count 개수만큼 빈칸)(원래 삼각형)(count 개수만큼 빈칸)*으로 교체한다.

(홀수 그림 3)

더보기
홀수 그림 3

       

3. 맨 아래 가득찬 *줄을 추가한다.

(홀수 그림 4)

더보기
홀수 그림 4

        ​

4. 이전 삼각형 앞에 *(count 개수만큼 빈칸)*을 추가하고 마지막 제일 위에 꼭짓점이 되는 *을 추가한다.

(홀수 그림 5)

더보기
홀수 그림 5

 

 

마지막으로 완성된 도형을 가운데 정렬로 만들기 위해 

짝수인 경우, al.size()-1부터 0으로 가면서 앞에 공백을 추가한다.

(짝수 그림 6)

더보기
짝수 그림 6

       

홀수인 경우, 0부터 al.size()-1으로 가면서 앞에 공백을 추가한다.

(홀수 그림 6)

더보기

홀수 그림 6

 

코드

 

 

반응형

'프로그래밍 문제 > 백준' 카테고리의 다른 글

[백준] 10995 별 찍기 - 20  (0) 2020.06.26
[백준] 10994 별 찍기 - 19  (0) 2020.06.26
[백준] 10992 별 찍기 - 17  (0) 2020.06.26
[백준] 10991 별 찍기 - 16  (0) 2020.06.26
[백준] 10990 별 찍기 - 15  (0) 2020.06.26
Comments