https://www.acmicpc.net/problem/2442
멀티캠퍼스 Java 2일차 수업에서 처음 배우는 사람도 있는데 심화문제 주신다더니
갑자기 마름모 별찍기 문제를 던지셨다....하루종일 손도 못대고 나서는 화가나서 삼각형
역삼각형 그리기를 먼저 이해하고자 2442번 별찍기-5 를 가져왔다.
문제
첫째 줄에는 별 1개, 둘째 줄에는 별 3개, ..., N번째 줄에는 별 2×N-1개를 찍는 문제
별은 가운데를 기준으로 대칭이어야 한다.
입력
첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다.
출력
첫째 줄부터 N번째 줄까지 차례대로 별을 출력한다.
예제 입력
5
예제 출력
*
***
*****
*******
*********

풀이
입력값인 5를 상수 star로 두고 시작을 한다.
큰 for문은 5번 반복을 위해 1로 두고 시작한다. 0이 아닌 1로 둔 이유는 안에
다른 for문에 영향을 줘야하는데 0이면 구하려는 값도 0이되서 못 구 하기 때문이다.
작은 첫번째 for문은 예제 출력에 나온 모양대로 별을 찍기 전 공백을 찍어주기 위한 문장이다.
큰 for문의 i 값이 1부터 1씩 커져갈 때 4부터 1씩 작아져서 0이 되어야 하기 때문에
j는 i와 같은 값을 주고 범위5로 고정시키고 1씩 작아지게 했다.
작은 두번째 for문은 별을 찍기 위한 문장이다.
큰 for문의 값이 1부터 1씩 커져갈 때 1부터 2씩 커지는 홀수가 되기 때문에
k값은 0으로 두고 범위를 1, 3, 5, 7, 9 미만이 되게 해서 별 개수를 맞춘다.
큰 반복문이 끝날 때는 줄바꿈을 해준다.
'백준' 카테고리의 다른 글
| 백준 Java - 2444번 별찍기-7 (0) | 2021.12.30 |
|---|
댓글