ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • JUNGOL 실력키우기 1331 : 문자마름모
    보관함 2017. 9. 5. 20:47


    마름모의 한 변의 길이 N을 입력받아 아래와 같이 문자마름모를 출력하는 프로그램을 작성하시오.


    < 처리조건 >
    (1) 첫 번째 행의 중앙부터 출발하여 시계 반대방향으로 'A'부터 차례대로 채워나간다. ('Z'다음에는 다시 'A'가 된다.)
    (2) 바깥 부분이 다 채워지면 두 번째 행 중앙부터 다시 같은 작업을 반복한다.
    (3) 같은 방법으로 마름모를 다 채워지도록 하여 출력한다.


    e3050b66a1b29a01767400d7560a4131_1449725
     





    마름모의 한변의 길이 N(N의 범위는 100 이하의 양의 정수)을 입력받는다.



    주어진 형태대로 한변의 길이가 N인 문자마름모를 출력한다. 문자 사이는 한 개의 공백으로 구분한다.
    
    주의 : 출력시 널문자('NULL', '\0')는 출력되지 않게 하세요..


    [Copy]
    4
    [Copy]
          A
        B M L
      C N U T K
    D O V Y X S J
      E P W R I
        F Q H
          G

     


     

    지금껏 정사각형이 나오다가 갑자기 마름모가 출현해서 굉장히 당황하게 되었던 문제였는데요,

    이 문제는 약간 시선을 바꿔서 생각하면 조금 더 쉽게 해결이 가능합니다.


    단순하게 생각하면 배열을 크게 만들어서 대각선을 따라 이동하도록 하면 됩니다.

    즉, 위의 문제에서 보면 n이 4이면 7*7배열을 만들어서 사용하는 것이죠.

     

     

     

    JUNGOL) 문제은행) 실력키우기) 문자마름모

    댓글

Designed by Tistory.