728x90
반응형
JUNGOL 정보올림피아드&알고리즘에서 학습용으로 문제를 가져왔습니다. 문제가 될 시 수정, 삭제하겠습니다.
문제
삼각형의 높이 n과 종류 m을 입력 받은 후 다음과 같은 삼각형 형태로 출력하는 프로그램을 작성하시오.
다음은 n이 5인 경우의 예시이다.

입력형식
삼각형의 크기 n(n의 범위는 100 이하의 홀수)과 종류 m(m은 1부터 4사이의 정수)을 입력받는다.
출력형식
위에서 언급된 4가지 종류를 입력에서 들어온 높이 n과 종류 m에 맞춰서 출력한다.
입력된 데이터가 주어진 범위를 벗어나면 "INPUT ERROR!"을 출력한다.
'*'과 '*' 사이에는 공백이 없다.
입력 예
5 1
출력 예
*
**
***
**
*
code Accepted(20)
n,m=map(int,input().split())
if n<0 or n>100 or m<1 or m>4:
print("INPUT ERROR!")
elif m==1:
for i in range(1,n+1):
if i<=3:
print("*"*i)
else:
print("*"*(n-i+1))
elif m==2:
for i in range(1,n+1):
if i<=3:
print((-i+3)*" "+"*"*i)
elif i==4:
print((-i+5)*" "+"*"*(n+1-i))
else:
print((-i+7)*" "+"*"*(n+1-i))
elif m==3:
for i in range(1,n+1):
if i<=3:
print((i-1)*" "+"*"*(-2*i+7))
elif i==4:
print((i-3)*" "+"*"*(2*(i-2)-1))
else:
print((i-5)*" "+"*"*(2*(i-2)-1))
elif m==4:
for i in range(1,n+1):
if i<=3:
print((i-1)*" "+"*"*(-i+4))
elif i==4:
print((i-2)*" "+"*"*(i-2))
else:
print((i-3)*" "+"*"*(i-2))
반응형
'Programming > JUNGOL : 정보올림피아드&알고리즘' 카테고리의 다른 글
[JUNGOL 도형만들기2-1337]: 달팽이삼각형 (0) | 2021.08.31 |
---|---|
[JUNGOL 도형만들기2-1329]: 별삼각형3 (0) | 2021.08.30 |
[JUNGOL 도형만들기2-1523]: 별삼각형1 (0) | 2021.08.28 |
[JUNGOL 수학1-1002]: 최대공약수, 최소공배수 (2) | 2021.08.27 |
[JUNGOL 수학1-1658]: 최대공약수와최소공배수 (0) | 2021.08.26 |