[Python Algorithm] 백준알고리즘 2439번 파이썬 풀이

2019.06.23 17:39Python/ㄴ Algorithm

Problem


Introduction


해당 문제에서 요구하는 바는 크게 2가지인데, 첫번째는 입력값이 주어지면 해당 수만큼 별을 찍은 라인을 출력하는것이다.
두번째는 매 라인마다 별의 갯수가 점층적으로 1개씩 감소한다.

Solve


num = int(input())
for i in range(1, num+1):
    print(" "*(num-i) + "*"*i)

완성된 코드는 위와 같다.

num = int(input())

우선 input함수를 사용하여 몇 줄을 출력할것인지 입력받는다. 이때 input함수를 int함수로 감싸줌으로써 input받은 값을 정수형 자료형으로 형변환해준다.

for i in range(1, num+1):
    print(" "*(num-i) + "*"*i)

이제 num이라는 변수 안에 몇 라인을 출력할것인지에 대한 정보가 있으므로 별만 찍어서 출력해주면 된다.
위의 코드를 살펴보면 1 ~ num + 1의 범위만큼 반복하고 print함수를 이용해 "*"을 출력하게된다.

Result


input값이 8일 경우 1 ~ 8 + 1, 즉 8번 반복하게되며, 매 반복문이 실행될때마다 i의 값은 8, 7, 6, 5, 4, 3, 2, 1이 된다.
그리고나서 “*“을 i번 출력하게되니

       *
      **
     ***
    ****
   *****
  ******
 *******
********

위와같은 출력결과가 발생하게 된다.