[백준,BOJ 2446] 별 찍기-9( JAVA 구현)

2019. 11. 30. 14:21·CodingTest/백준 온라인 저지(BOJ)
반응형

 

-해법

  별 찍기 문제-9이다. 솔직히 별 찍기 문제는 무언가 특별한 기술이 필요한 것이 아니라, 예제 출력의 모양을 본 후 규칙성을 찾아 구현해야 하는 것 같다. 이번 문제의 경우에는 눈에 딱 봐도 앞 뒤로 한 개씩 빈칸이 증가하는 것을 알 수 있다. 1번째 줄에서 앞 뒤로 0개의 빈칸, 2번째 줄에서 앞 뒤로 1개의 빈칸.... 식으로 가는 규칙성을 찾았으면 이제 이를 토대로 구현해보면 된다. 필자는 보통 중앙을 포함해 윗부분을 구현하고 아랫부분을 별도로 구현한다.

 

//윗부분 구현

for(int i=0;i<n;i++) { // 빈 칸의 개수가 +1씩 증가하므로 0부터 4까지 반복해준다. 
			for(int j=1;j<2*n;j++) { // 열의 개수는 동일하므로 고정한다.
				if(j ==2 * n -i) break; // 이는 출력형식 오류를 방지하기 위해서 수행해준다. 
                						// 즉, 별을 다 찍으면 반복문을 벗어나 다음 행으로 간다.
				if(j > 0+i && j<2*n-i) { // 해당 범위안에서만 별을 찍어준다.
					System.out.print("*");
				}else // 나머지는 공백 처리
					System.out.print(" ");
			}
			System.out.println();
}

 

// 아랫부분 구현

for(int i=1;i<n;i++) { // 아랫 부분의 반복 범위의 표현을 위해 1~4반복
			for(int j=1;j<2*n;j++) { // 열은 고정
				if(j>n+i) break; // 마찬가지로 마지막 별을 찍은 다음 반복은 수행하지 않는다.
				if(j>= n-i && j<=n+i) { // 해당 범위에 별을 찍기 각 범위가 양쪽에서 1씩 증가하므로
                						// 한 줄이 넘어갈 때 마다 2개씩 별이 더 찍히게 된다.
					System.out.print("*");
				}else // 나머지는 공백처리
					System.out.print(" ");
			}
		System.out.println();
	}
저작자표시
'CodingTest/백준 온라인 저지(BOJ)' 카테고리의 다른 글
  • [백준,BOJ 10992] 별 찍기-17( JAVA 구현)
  • [백준,BOJ 10991] 별 찍기-16( JAVA 구현)
  • [백준,BOJ 2522] 별 찍기-12 (JAVA 구현)
  • [백준,BOJ 2445] 별 찍기-8(JAVA 구현)
뜸부깅
뜸부깅
코딩에 대한 여러 개인적인 생각을 정리하고 공부를 하는 공간입니다!!
  • 뜸부깅
    코오오딩
    뜸부깅
  • 전체
    오늘
    어제
    • Note (429)
      • Skill (31)
        • Java & Spring (9)
        • Javascript & HTML & CSS (0)
        • React (0)
        • Next.js (22)
      • CodingTest (389)
        • 백준 온라인 저지(BOJ) (140)
        • 프로그래머스(Programmers) (79)
        • LeetCode (170)
      • Algorithm & Data Structure (6)
      • [Project] 포트폴리오 (3)
        • Front end (3)
        • Back end (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    leetcode 2236
    meidum
    BOJ
    프로그래머스
    next 14
    boj1427
    알고리즘
    boj2108
    TypeScript
    백준2751
    component-scan
    백준1427
    백준
    Easy
    자바
    Java
    백준1260
    medium
    백준7576
    백준7576자바
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
뜸부깅
[백준,BOJ 2446] 별 찍기-9( JAVA 구현)
상단으로

티스토리툴바