알고리즘 C#

백준 2523번 별 찍기 - 13 C#으로 문제 풀어보기

minsoungdev 2025. 7. 30. 23:42

안녕하세요 저는 박민성입니다. 

 

오늘은 백준 2523번 별 찍기 - 13를 풀어 보겠습니다.

문제를 보면

입력은 첫째 줄에 1보다 크거나 같고 100보다 작거나 같고 수가 주어집니다.

 

출력은 2 x N - 1번째 줄까지 차례대로 예제 출력에 출력대로 출력하면 됩니다.

3이 입력이 들어오면 첫째 줄부터 한 줄마다 별이 +1 되면서 3번째 줄까지 별을 출력합니다.

일단 입력을 받아 변수 a로 선언해 줍니다.

저는 일단 for문을 사용하여 문제를 풀기로 하였습니다.

별이 +1 되면서 입력한 값까지 별을 찍는 for문 한 개와 

별이 -1 되면서 입력한 값 -1까지 별을 찍는 for문 한 개 이렇게 크게 두 개 케이스를 돌릴 겁니다.

여기서 i는 줄에 개수를 담당하고 있습니다. 입력한 a번까지 안에 있는 별을 실질적으로 찍는 for문이 끝난 뒤에 줄 바꿈을 해주는 for문입니다. j는 실질적으로 별을 찍는 코드입니다. i는 0부터 시작하지만 첫째 줄부터 별이 찍히기 때문에 줄마다 늘어나고 해서

j는 i + 1만큼 별을 찍어야 합니다.

두 번째 for문 여기서 i는 첫 번째 for문에서 별 3줄까지 찍었으니 2줄까지만 찍으면 되기 때문에 a - 1만큼 줄 이동을 하고 

j는 반대로 -1 해야 하기 때문에 a를 j를 넣어주고 i에 +1 해준만큼만 별을 찍으면 4번째 줄부터 2번 별이 찍히고 5번째 줄은 4번째 줄보다 -1 한 별이 찍힐 겁니다.

이것이 전체 코드입니다.

이렇게 백준에 제출하였더니 

정답이었습니다.