파이썬(Python)/문제풀이(백준,BaekJoon)
백준 2523 ( 별 찍기 - 13 ) [ Python ]
구루루(gururu)
2020. 5. 28. 17:49
반응형
나:
N = int(input())
for i in range(1,N+1):
print('*'*i)
for i in range(N-1,0,-1):
print('*'*i)
완성된 코드는 위와 같다.
N = int(input())
최종 출력할 * 개수 N을 정수형으로 입력값을 받는다.
for i in range(1,N+1):
print('*'*i)
for i in range(N-1,0,-1):
print('*'*i)
문제를 크게 별( * )이 1개씩 증가하는 부분과 1개씩 줄어드는 부분으로 나누었다.
먼저 증가하는 부분은 i를 1부터 N+1까지 *에 곱해서 N개까지 1씩 증가하며 출력하도록 했다.
그리고 감소하는 부분은 i를 N-1부터 0까지 ( range의 끝부분은 포함되지 않음 ) -1씩 감소하며 출력
다른사람:
https://cleancode-ws.tistory.com/31
a = int(input())
b =a
for k in range(1,b+1):
print('*'*k)
for i in range(1,a):
print('*'*(b-i))
완성된 코드는 위와 같다.
range함수의 증가값을 사용하지 않고 처음과 끝값만을 이용해서 문제를 해결했다.
1씩 감소하는 부분을 b-1로 표현해 증가값의 이용없이 * 의 개수가 감소한다
반응형