먹었으면 뇌를 쓰자
백준 2494 java - 별 찍기 2 본문
문제
잘못된 코드(*런타임 에러)
두 가지 방법이 떠올랐다.
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