
풀이 1 )
#자연수 n을 입력받음
#n개의 줄에 n+1개의 숫자 혹은 문자로 채워서 출력
#입력받는 수만큼 숫자 -1씩, 문자+1 출력
#수가 줄때마다 문자를 추가시켜 출력
num_list =[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,181,9,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40]
list =["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T","U", "V", "W", "X", "Y", "Z"]*3
n = int(input())
n = n + 1
for i in range(n,1,-1):
for j in range(1,n+1,1):
if i == j or j > i:
print(list[0], end="")
list.pop(0)
else:
print(num_list[0], end="")
num_list.pop(0)
print("")
풀이 2 )
import string
n = int(input())
list_int = [x for x in range(1, n * (n + 1) // 2 + 1)]
alpha = string.printable[36:]
# p is counter for integer
# z is counter for alphabet
p, z = 0, 0
for i in range(n):
print(*list_int[p:p + n - i], end=' ')
print(*alpha[z:z + i + 1])
p += n - i
z += i + 1
풀이 3 )
import string
alpha_list = list(string.ascii_uppercase)
count_number = int(input(''))
number = 1
alpha = 0
row = count_number
column = count_number + 1
count_row = 1 # 아래로 가는거
count_column = 1 # 오른쪽으로 가는거
while count_row <= row and count_column <= column:
if column == count_column:
print(alpha_list[alpha])
alpha += 1
count_row += 1
count_column = 1
elif column - count_column >= count_row:
print(number, end=' ')
number += 1
count_column += 1
else:
print(alpha_list[alpha], end=' ')
alpha += 1
count_column += 1
풀이 4 )
import string
def alpha_rect(num):
gen_alpha = string.printable[36:]
k = 1
l = 0
for i in reversed(range(1,num+1)):
num_str = ""
for j in range(0,i):
num_str += str(k)
k = k+1
print(num_str+gen_alpha[l:l+1+num-i])
l = l+1+num-i
num = int(input())
alpha_rect(num)
'배운다 > 파이썬' 카테고리의 다른 글
143 : 반복제어문3 - 형성평가4 (0) | 2020.07.25 |
---|---|
142 : 반복제어문3 - 형성평가3 (0) | 2020.07.25 |
[파이썬] 별찍기 552 : 반복제어문3 - 자가진단5 (0) | 2020.07.22 |
[파이썬] 별찍기 551 : 반복제어문3 - 자가진단4 (0) | 2020.07.22 |
[파이썬] 별찍기 550 : 반복제어문3 - 자가진단3 (0) | 2020.07.22 |