요즘 Java 기초 공부를 하고 있다.
당장 다음주 월요일에(내일..) 자바 기초 테스트가 있는데,
그 중 별찍기 문제가 있어서 오랜만에 코드트리 들어가서 관련 문제를 다시 풀어봤다(예전에 파이썬으로 풀었던 문제!).
코드트리에서 방학 이벤트를 한다는 것은 알고 있었는데 정확히 눌러보지 않아서..(존재만 알고 있던 차에
어제 오랜만에 만나게 된 학교 친구가 있었는데
요즘 코드트리에서 방학 과제(?를 한다고 그래서
나도 집에 오자마자 읽어보고 참여하기를 눌렀다.
그리고 참여 이후 푼 문제는 '규칙을 찾아 출력하기' 한 문제이다.
그래서 해당 문제에 대한 리뷰를 해보고자 한다!
📝 모양과 관계 없는 별 출력 / 규칙을 찾아 출력하기
문제는 간단하고, 다양한 입출력 예시가 있었는데,
4와 5정도 숫자는 되어야 특징을 알 수 있을 것 같아서 일부만 가져왔다.
그리고 내 코드는..
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
for (int i=0; i<n; i++){
// 별이 입력받은 수만큼 있다는 것
if (i==0) {
for (int j=0; j<n; j++){
System.out.print("* ");
}
} else {
// 1부터 시작해서 하나씩 들어가는 별찍기
for (int j=0; j<i; j++){
System.out.print("* ");
}
// 별찍기와 반대로 하나씩 줄어드는 스페이스찍기
for (int j=0; j<n-i-1; j++){
System.out.print(" ");
}
// 그리고 마지막으로 별 찍고 끝내기
System.out.print("* ");
}
System.out.println();
}
}
}
안에 구조는
첫 줄 + 나머지 줄 (별 찍기 + 스페이스 찍기 + 마지막에 별 찍고 끝내기)
으로 구성하였다.
첫 줄의 특징은 별이 입력받은 수만큼 있다는 것이었고,
그 다음부터는 1부터 시작해서 하나씩 들어가는 별찍기
별찍기와 반대로 하나씩 줄어드는 스페이스찍기
그리고 마지막으로 별 찍고 끝내기
이렇게 문제 풀고 해설 봤는데
중첩 반복문 하나에 조건문 하나 넣어서 해결할 수 있는 문제였다.. 역시
더 많은 공부가 필요할 듯 하다.
다음주에는 더 다양한 알고리즘 공부로 돌아오겠습니두
+) 문제 내용은 캡쳐해서 블로그에 공유할 수 있다고 되어있는데,
제가 혹시 무언가 잘못 공유했다면 (..) 누구든지 편하게 말씀해주세요-!
당장 수정하러 오겠슴니다.
'2024 코드트리 방학 조별 과제' 카테고리의 다른 글
[코드트리 조별과제] 금 채굴하기 (0) | 2024.08.15 |
---|---|
[코드트리 조별과제] 삽입정렬 (0) | 2024.08.09 |
[코드트리 조별과제] 거품정렬 & 선택 정렬 (0) | 2024.08.04 |