728x90
반응형
n = int(input(''))
lst = [[1 for j in range(n)] for i in range(n)] # 모두 1로 채움
s_idx = 1 # 시작 인덱스. 0으로 채움
e_idx = n-2 # 종료 인덱스. 0으로 채움
while s_idx < n/2:
for i in range(s_idx, e_idx+1):
for j in range(s_idx, e_idx+1):
if j != s_idx-1 and j != e_idx+1 and i == s_idx:
lst[i][j] = 0
elif j != s_idx-1 and j != e_idx+1 and i == e_idx:
lst[i][j] = 0
elif j != s_idx-1 and j != e_idx+1 and i != s_idx-1 and i != e_idx+1 and j == s_idx:
lst[i][j] = 0
elif j != s_idx-1 and j != e_idx+1 and i != s_idx-1 and i != e_idx+1 and j == e_idx:
lst[i][j] = 0
s_idx = s_idx + 2 # 사각형 왼쪽에서 안으로 이동
e_idx = e_idx - 2 # 사각형 오른쪽에서 안으로 이동
for row in lst: # 사격향으로 보기. 결과는 이것과 print까지 비고(#)로 처리
print(row)
print()
print(lst) # 실제 출력
728x90
반응형
'프로그램' 카테고리의 다른 글
[파이썬] 문제 : N개의 정수 입력 받고 평균 구하기 (0) | 2022.11.26 |
---|---|
[파이썬] 문제 : N개의 아파트 호수 리스트 중 3의 개수 출력 (0) | 2022.11.26 |
[파이썬] 문제 : 10~50 난수로 리스트 추가 (0) | 2022.11.26 |
[파이썬] 문제 : 파일의 학생별 국어,영어 합계 및 평균 계산 (0) | 2022.11.26 |
[파이썬] 문제 : pandas로 특정 cell 합계 계산 plot 그리기 (0) | 2022.11.26 |
댓글