먹었으면 뇌를 쓰자

백준 2494 java - 별 찍기 2 본문

JAVA/백준 알고리즘

백준 2494 java - 별 찍기 2

뇌이비 2022. 11. 9. 21:45

문제

 

 

 

잘못된 코드(*런타임 에러)

 

두 가지 방법이 떠올랐다.

1) 쉬운 방법 --> 출력 값을 오른쪽 정렬

2) 어려운 방법 --> 테스트 개수 n - 별 개수(반복 횟수) = 공백 개수 설정

 

쉬운 길을 가고 싶어 출력 값을 오른쪽 정렬하는 법을 검색했다.

printf 클래스를 사용하고, %c를 넣으면 문자열 오른쪽 정렬이 된다고 하더라.

뭔가... 잘못되었다.

 

역시 인생은 쉽게만 살아가면 재미 없는게 아니라 그냥 안 되나보다. 

 

 

 

 

정답

 

자, 그렇다면 어려운 길을 가보자.

"테스트 개수 n - 별 개수(반복 횟수) = 공백 개수 설정"도 결국 반복이 필요하다. 

 

별 찍는 for문보다 앞쪽에 공백 찍는 for문을 만든다.

공백 찍는 for문은 "테스트 개수 n - 반복 횟수 i"가 될 때까지 실행되어야 한다.

따라서 실행조건은 j <= n-i 이다.

이렇게 하면 n=5, i=1일 때 공백 4개와 별 1개

n=5, i=2일 때 공백 3개와 별 2개 ... 

옳게 출력된다!  

 

 

 

 

'JAVA > 백준 알고리즘' 카테고리의 다른 글

백준 10951 java - A+B-4  (0) 2022.11.16
백준 10952 java - A+B-5  (0) 2022.11.14
백준 2438 java - 별 찍기 1  (0) 2022.11.09
백준 11022 java - A+B-8  (0) 2022.11.08
백준 11021 java - A+B-7  (0) 2022.11.08
Comments