728x90
- 1468
다음과 같은 n*n 배열 구조를 출력하기
입력이 3인 경우 다음과 같이 출력한다.
1 2 3
6 5 4
7 8 9
n=int(input())
number=[[0 for _ in range(100)]for _ in range(100)]
flag=True
cnt=1
for y in range(n):
if flag:
for x in range(n):
number[y][x]=cnt
cnt+=1
flag=False
else:
for x in reversed(range(n)):
number[y][x]=cnt
cnt+=1
flag=True
for y in range(n):
for x in range(n):
print(number[y][x],end=" ")
print()
=> 방향을 상황에 맞게 바꾸기위한 flag를 선언하여 풀었다.
- 1469
다음과 같은 n*n 배열 구조를 출력하기
입력이 3인 경우 다음과 같이 출력한다.
3 2 1
4 5 6
9 8 7
n=int(input())
number=[[0 for _ in range(100)]for _ in range(100)]
flag=False
cnt=1
for y in range(n):
if flag:
for x in range(n):
number[y][x]=cnt
cnt+=1
flag=False
else:
for x in reversed(range(n)):
number[y][x]=cnt
cnt+=1
flag=True
for y in range(n):
for x in range(n):
print(number[y][x],end=" ")
print()
- 1470
다음과 같은 n*n 배열 구조를 출력하기
입력이 3인 경우 다음과 같이 출력한다.
1 6 7
2 5 8
3 4 9
n=int(input())
number=[[0 for _ in range(100)]for _ in range(100)]
flag=True
cnt=1
for x in range(n):
if flag:
for y in range(n):
number[y][x]=cnt
cnt+=1
flag=False
else:
for y in reversed(range(n)):
number[y][x]=cnt
cnt+=1
flag=True
for y in range(n):
for x in range(n):
print(number[y][x],end=" ")
print()
- 1471
다음과 같은 n*n 배열 구조를 출력하기
입력이 3인 경우 다음과 같이 출력한다.
3 4 9
2 5 8
1 6 7
n=int(input())
number=[[0 for _ in range(100)]for _ in range(100)]
flag=False
cnt=1
for x in range(n):
if flag:
for y in range(n):
number[y][x]=cnt
cnt+=1
flag=False
else:
for y in reversed(range(n)):
number[y][x]=cnt
cnt+=1
flag=True
for y in range(n):
for x in range(n):
print(number[y][x],end=" ")
print()
- 1472
다음과 같은 n*m 배열 구조를 출력하기
입력이 3 4인 경우 다음과 같이 출력한다.
12 11 10 9
5 6 7 8
4 3 2 1
'''
12 11 10 9
5 6 7 8
4 3 2 1
'''
n,m=map(int,input().split())
number=[[0 for _ in range(100)]for _ in range(100)]
flag=True
cnt=1
for y in reversed(range(n)):
if flag:
for x in reversed(range(m)):
number[y][x]=cnt
cnt+=1
flag=False
else:
for x in range(m):
number[y][x]=cnt
cnt+=1
flag=True
for y in range(n):
for x in range(m):
print(number[y][x],end=" ")
print()
- 1473
다음과 같은 n*m 배열 구조를 출력하기
입력이 3 4인 경우 다음과 같이 출력한다.
9 10 11 12
8 7 6 5
1 2 3 4
'''
9 10 11 12
8 7 6 5
1 2 3 4
'''
n,m=map(int,input().split())
number=[[0 for _ in range(100)]for _ in range(100)]
flag=False
cnt=1
for y in reversed(range(n)):
if flag:
for x in reversed(range(m)):
number[y][x]=cnt
cnt+=1
flag=False
else:
for x in range(m):
number[y][x]=cnt
cnt+=1
flag=True
for y in range(n):
for x in range(m):
print(number[y][x],end=" ")
print()
- 1474
다음과 같은 n*m 배열 구조를 출력하기
입력이 3 4인 경우 다음과 같이 출력한다.
10 9 4 3
11 8 5 2
12 7 6 1
'''
10 9 4 3
11 8 5 2
12 7 6 1
'''
n,m=map(int,input().split())
number=[[0 for _ in range(100)]for _ in range(100)]
flag=True
cnt=1
for x in reversed(range(m)):
if flag:
for y in reversed(range(n)):
number[y][x]=cnt
cnt+=1
flag=False
else:
for y in range(n):
number[y][x]=cnt
cnt+=1
flag=True
for y in range(n):
for x in range(m):
print(number[y][x],end=" ")
print()
- 1475
다음과 같은 n*m 배열 구조를 출력하기
입력이 3 4인 경우 다음과 같이 출력한다.
12 7 6 1
11 8 5 2
10 9 4 3
'''
12 7 6 1
11 8 5 2
10 9 4 3
'''
n,m=map(int,input().split())
number=[[0 for _ in range(100)]for _ in range(100)]
flag=False
cnt=1
for x in reversed(range(m)):
if flag:
for y in reversed(range(n)):
number[y][x]=cnt
cnt+=1
flag=False
else:
for y in range(n):
number[y][x]=cnt
cnt+=1
flag=True
for y in range(n):
for x in range(m):
print(number[y][x],end=" ")
print()
※ 문제를 풀 때 어떻게 출력되는지 확인하면서 푸는 것보다 코드를 작성하고 이 코드가 어떻게 나올지 머리로 생각 후 수정하는 것이 더 도움이 되는 것 같습니다.
'프로그래밍 > Python' 카테고리의 다른 글
[Codeup 함수 연습] 1548 ~ 1551, 1555 ~ 1559 (0) | 2021.01.18 |
---|---|
[Codeup 2차원배열연습-3] 1476 ~ 1483 (0) | 2021.01.13 |
[Codeup 2차원배열연습-1] 1460 ~ 1467 (0) | 2021.01.11 |
[Codeup 기초100제] 1091 ~ 1099 (0) | 2021.01.10 |
[Codeup 기초100제] 1081 ~ 1090 (0) | 2021.01.09 |