[백준,BOJ 2445] 별 찍기-8(JAVA 구현)

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

-해법 

  이번 별 찍기에서의 규칙성은 1번째 줄은 첫 번째 열과 마지막 열에 1개, 두 번째 줄은 2개,.... 이런 식으로 가게 된다.

필자의 경우에는 윗부분과 아랫부분으로 나누어서 생각하였고, 윗부분에 중앙 부분까지 포함이 되어있다.

 

// 윗 부분 반복문

for(int i=0;i<n;i++) {  // 중앙까지 5개의 줄을 사용
  for(int j=1;j<2*n+1;j++) {  // 열의 개수는 윗 부분과 아랫 부분 모두 동일하다. 
   if((j<=1+i && j>=1) || (j>=2*n-i && j<=2*n)) {  // 두 조건을 사용하는데, 시작 부분은 첫 번째 열과 마지막 열이다.

                                                // 범위는 시작 + i로 , 끝 -i로 정할 수 있다.
   System.out.print("*");  // 별을 찍어준다.
   }else { 
    System.out.print(" "); 
  } 
 } 
System.out.println(); 
}

 

//아랫 부분 반복문

for(int i=n-1;i>0;i--) { // 아랫 부분은 별의 개수가 감소하므로 감소 반복문
			for(int j=0;j<2*n;j++) { // 열의 시작부분이 바뀌었지만 전체 개수의 변화는 없다.
				if((j<(0+i)&&j>=0) || (j>=(2*n-i) && j<=2*n)) { //마찬가지로 시작과 끝부터 +-i만큼 찍기 
					System.out.print("*");
				}else {
					System.out.print(" ");
				}
			}			
			System.out.println();
		}
저작자표시
'CodingTest/백준 온라인 저지(BOJ)' 카테고리의 다른 글
  • [백준,BOJ 2446] 별 찍기-9( JAVA 구현)
  • [백준,BOJ 2522] 별 찍기-12 (JAVA 구현)
  • [백준,BOJ 2442] 별 찍기-5(JAVA 구현)
  • [백준,BOJ 2441] 별 찍기-4(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)
  • 블로그 메뉴

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

  • 공지사항

  • 인기 글

  • 태그

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

  • 최근 글

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

티스토리툴바