백준 2441번: 별 찍기
문제 설명
- ◥모양으로 *를 출력하는 문제입니다.
접근법
- ◥모양은 다음의 특징을 가지고 있습니다.
- 아래로 갈수록 검은색이 줄어듭니다.
- 우측정렬 되어있습니다.
- 파이썬에서는 f-string으로 우측정렬을 구현할 수 있습니다.
- f-string은 기존의 print("문자열")에서 따옴표 앞에 f를 추가한 모습입니다.
- print(
f
"문자열")
- print(
- f-string에서는
{}
속 문자를 변수로 인식합니다.answer = 5
를 위에서 선언했다면- print("{answer}입니다.")는
{answer}입니다.
를 출력하지만 - print(f"{answer}입니다.")는
5입니다.
를 출력합니다.
- print("{answer}입니다.")는
%
를 이용해 다음과 같이 표현할 수도 있습니다.- print(f"%d입니다."%5)는
5입니다.
를 출력합니다.
- print(f"%d입니다."%5)는
- ""속 %d와 %s는
뒤에 있는 값이 들어올 공간입니다
라는 뜻입니다. - 여기서 말하는
뒤에 있는 값
은 ""가 끝나고 나오는%
뒤에 있는 값입니다. %d
와%s
사이에는%5d
,%-3s
처럼 숫자가 들어갈 수 있습니다. 숫자만큼의 공간을 잡고 오른쪽부터 값을 넣어라는 의미입니다.- print(f"%7s입니다."%"바보")의 결과는
ㅤㅤㅤㅤㅤ바보입니다.
입니다. - 총 7칸의 공간 중 왼쪽부터 '바보'를 채워넣었고 그 결과 5칸의 빈칸이 공간을 차지하고 있습니다.
- print(f"%7s입니다."%"바보")의 결과는
- f-string은 기존의 print("문자열")에서 따옴표 앞에 f를 추가한 모습입니다.
정답
N = int(input())
for i in range(N):
star ="*"*(N-i) #i번째에서 사용될 별입니다(i번째 줄에는 N-i개의 별이 사용됩니다)
print(f"%{N}s"%star) #N개의 공간을 먼저 차지한 뒤 오른쪽부터 별을 찍습니다
Author And Source
이 문제에 관하여(백준 2441번: 별 찍기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@qwerty1434/백준-2441번-별-찍기저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)