티스토리 뷰
Text Alignment
In Python, a string of text can be aligned left, right and center.
.ljust(width)
This method returns a left aligned string of length width.
>>> width = 20
>>> print 'HackerRank'.ljust(width,'-')
HackerRank----------
.center(width)
This method returns a centered string of length width.
>>> width = 20
>>> print 'HackerRank'.center(width,'-')
-----HackerRank-----
.rjust(width)
This method returns a right aligned string of length width.
>>> width = 20
>>> print 'HackerRank'.rjust(width,'-')
----------HackerRank
Task
You are given a partial code that is used for generating the HackerRank Logo of variable thickness.
Your task is to replace the blank (______) with rjust, ljust or center.
Input Format
A single line containing the thickness value for the logo.
Constraints
The thickness must be an odd number.
Output Format
Output the desired logo.
Sample Input
5
Sample Output
H
HHH
HHHHH
HHHHHHH
HHHHHHHHH
HHHHH HHHHH
HHHHH HHHHH
HHHHH HHHHH
HHHHH HHHHH
HHHHH HHHHH
HHHHH HHHHH
HHHHHHHHHHHHHHHHHHHHHHHHH
HHHHHHHHHHHHHHHHHHHHHHHHH
HHHHHHHHHHHHHHHHHHHHHHHHH
HHHHH HHHHH
HHHHH HHHHH
HHHHH HHHHH
HHHHH HHHHH
HHHHH HHHHH
HHHHH HHHHH
HHHHHHHHH
HHHHHHH
HHHHH
HHH
H
문제해석
파이썬에는 아래와 같이 정렬을 해주는 함수가 있다.
1. str.ljust(width, n) - str이 왼쪽으로 오도록 하고 n문자를 width만큼 채운다.
2. str.center(width, n) - str이 가운데에 오도록하고 n문자를 width만큼 채운다.
3. str.rjust(width, n) - str이 오른쪽으로 오도록 하고 n문자를 width만큼 채운다.
코드창에 해커랭크의 로고를 출력하는 코드의 일부분이 있다. 이 코드는 완벽하지 않고 중간중간 (______) 이런 식으로 빈칸이 존재하는데 이 것을 ljust, center, rjust 3개 함수 중 적당한 것을 골라서 변경해주면 된다.
문제풀이
이 문제는 그냥 가능한 경우의 수를 입력하면서 풀었다....
#Replace all ______ with rjust, ljust or center.
thickness = int(input()) #This must be an odd number
c = 'H'
#Top Cone
for i in range(thickness):
print((c*i).rjust(thickness-1)+c+(c*i).ljust(thickness-1))
#Top Pillars
for i in range(thickness+1):
print((c*thickness).center(thickness*2)+(c*thickness).center(thickness*6))
#Middle Belt
for i in range((thickness+1)//2):
print((c*thickness*5).center(thickness*6))
#Bottom Pillars
for i in range(thickness+1):
print((c*thickness).center(thickness*2)+(c*thickness).center(thickness*6))
#Bottom Cone
for i in range(thickness):
print(((c*(thickness-i-1)).rjust(thickness)+c+(c*(thickness-i-1)).ljust(thickness)).rjust(thickness*6))
'Programming > Python' 카테고리의 다른 글
[Python/Hackerrank] Strings > Designer Door Mat (0) | 2021.12.10 |
---|---|
[Python/Hackerrank] Strings > Text Wrap (0) | 2021.12.09 |
[Python/Hackerrank] Strings > String Validators (0) | 2021.12.09 |
[Python/Hackerrank] Strings > Find a string (0) | 2021.12.08 |
[Python/Hackerrank] Strings > Mutations (0) | 2021.12.08 |
- Total
- Today
- Yesterday
- SQL Server
- mysql
- Tableau
- 해커랭크
- 분석탭
- 넥스트BT
- 경구치료제
- hackerrank
- MSSQL
- 리비안
- 코로나19
- Weather Observation Station
- list
- DATABASE
- 몰누피라비르
- 테슬라
- TSQL
- 미중무역전쟁
- 동국알앤에스
- tensorflow
- MS SQL Server
- 매매일지
- insert
- HK이노엔
- 넷플릭스
- 대원화성
- 에코캡
- string
- python
- python3
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |