๋ฌธ์ ๋ฅผ ํตํด์ ์ ์ ์๋ ์ :
1. 2์ฐจ์ ํ๋ฉด ์์ ์ N๊ฐ → 2์ฐจ์ ๋ฐฐ์ด์ ์ฌ์ฉํด๋ณผ๊น?
2. ์ขํ๋ฅผ x์ขํ๊ฐ ์ฆ๊ฐํ๋ ์์ผ๋ก
3. x์ขํ๊ฐ ๊ฐ์ผ๋ฉด, y์ขํ๊ฐ ์ฆ๊ฐํ๋ ์์ผ๋ก
4. ์ ๋ ฌ → sorted(), sort() ํจ์ ์๊ฐํ ์ ์์
ํ์ํ ์ ๋ ฅ๊ฐ :
1. ์ฒซ์งธ ์ค : ์ ์ ๊ฐ์ N
2. ๋์งธ ์ค ~ : i๋ฒ์ ์ ์์น xi์ yi (์์น๊ฐ ๊ฐ์ ๋ ์ ์ ์๋ค)
→ ๋์งธ ์ค๋ถํฐ ์ ๋ ฅ ๊ฐ์ ๋ฐ๋ ๊ฒ์ด๋ฏ๋ก ๋ฐ๋ณต๋ฌธ ๋๋ ค์ผ๋จ ํ์ ๊ฐ๋ฅ
์ถ๋ ฅ๊ฐ :
1. ์ฒซ์งธ ์ค ~ N๊ฐ์ ์ค์ ์ ์ ์ ๋ ฌํ ๊ฒฐ๊ณผ
→ (ํ ์ค๋ก ๋ฐฐ์ด์ ๋ณด์ฌ์ฃผ๋ ๊ฒ์ด ์๋๊ณ )
๊ฐ i๋ฒ์งธ ๋ฐฐ์ด์ ์์๋ฅผ ์ฐจ๋ก๋๋ก ์ถ๋ ฅํด์ผํจ์ ๋ณด๊ณ ์ด ๋ํ ๋ฐ๋ณต๋ฌธ์ ๋๋ ค์ ์ถ๋ ฅ์ ํด์ผํ๋๊ตฌ๋ ์๊ฐํ ์ ์์
๐ ํ์ ํ ๊ฒ์ ๋ฐํ์ผ๋ก ์ฝ๋๋ฅผ ์์ฑํด๋ณด์!
STEP 1 >
๋ง์ ๊ฐ์ ์ ๋ ฅ ๋ฐ๊ณ ์์ผ๋ฏ๋ก
์๊ฐ ์ด๊ณผ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด์,
์๋์ ๊ฐ์ด import sys ๋ฅผ ํตํด์ input()์ ๋ฐ๋ ๊ฒ์ ์ถ์ฒํ๋ค.
import sys
N = int(sys.stdin.readline().rstrip())
x, y = map(int, sys.stdin.readline().rstrip().split())
STEP 2 >
์ด๋, xi์ yi๋ ๋ฐ๋ณต๋ฌธ์ ํตํด์ ์ ๋ ฅ์ ๋ฐ์์ผ ๋๊ธฐ ๋๋ฌธ์
N์ ํฌ๊ธฐ ๋งํผ์ for๋ฌธ์ ์ฌ์ฉํด์ xi์ yi์ ๊ฐ์ ์ ๋ ฅ ๋ฐ๋๋ค.
import sys
N = int(sys.stdin.readline().rstrip())
for i in range(N):
[x, y] = map(int, input().split())
STEP 3 >
xi์ yi์ ์ ๋ค์ 2์ฐจ์ ๋ฐฐ์ด ์์ ์์ ์์๋ค์ด๋ฏ๋ก
array ๋ฐฐ์ด์ ํ๋ ๋ง๋ค๊ณ
๊ฐ๊ฐ์ xi์ yi ์ ๋ค์ ํ๋์ ์์๋ก appendํด์ค๋ค.
import sys
N = int(sys.stdin.readline().rstrip())
array = []
for i in range(N):
x, y = map(int, sys.stdin.readline().rstrip().split())
array.append([x,y])
STEP 4 >
์ดํ, sorted() ํจ์๋ฅผ ์ด์ฉํด์ ๋ฐฐ์ด array๋ฅผ
x์ขํ๊ฐ ์ฆ๊ฐํ๋ ์์ผ๋ก x์ขํ๊ฐ ๊ฐ์ผ๋ฉด, y์ขํ๊ฐ ์ฆ๊ฐํ๋ ์์ธ
๋ฐฐ์ด s_array๋ก ๋ง๋ค์ด์ค๋ค.
import sys
N = int(sys.stdin.readline().rstrip())
array = []
for i in range(N):
x, y = map(int, sys.stdin.readline().rstrip().split())
array.append([x,y])
s_array = sorted(array)
STEP 5 >
๋ง์ง๋ง์ผ๋ก, ์ฃผ์ด์ง ์ถ๋ ฅ๊ฐ์ฒ๋ผ ์ถ๋ ฅ๋๊ฒ
for๋ฌธ์ N์ ํฌ๊ธฐ๋งํผ ๋๋ ค์
s_array ๋ฐฐ์ด์ ์ ์ฅ๋ i๋ฒ์งธ์ xi์ yi ๊ฐ์ ์ถ๋ ฅํด์ฃผ๋ฉด ๋๋ค.
import sys
N = int(sys.stdin.readline().rstrip())
array = []
for i in range(N):
x, y = map(int, sys.stdin.readline().rstrip().split())
array.append([x,y])
s_array = sorted(array)
for i in range(N):
print(s_array[i][0], s_array[i][1])
๐ ์ต์ข ์ฝ๋๋ ์ด๋ฌํ๋ค
import sys
N = int(sys.stdin.readline().rstrip())
array = []
for i in range(N):
x, y = map(int, sys.stdin.readline().rstrip().split())
array.append([x,y])
s_array = sorted(array)
for i in range(N):
print(s_array[i][0], s_array[i][1])
๐ Q&A
๐ ์ sorted() ํจ์์์ lambda๋ฅผ ์ฌ์ฉํ์ง ์์๋?
#ex1)
array.sort(key = lambda x: (x[0],x[1]))
#ex2)
arr = sorted(arr, key= lambda y: y[1])
arr = sorted(arr, key= lambda x: x[0])
#ex3)
arr.sort(key=lambda a : (a[0], a[1]))
#my_code
s_array = sorted(array)
๐ ์๋ฉด ์ข์ ์ฝ๋๋ค
๐์ด๋ ๊ฒ ๋ฏธ๋ฆฌ ์ฐ๊ธฐ๋ง ํ๋ฉด, ๊ทธ ์ดํ์ ๋ฐ๋ก input() ํจ์๋ฅผ ์ฌ์ฉํ ์ ์์.
import sys
input = sys.stdin.readline
N = int(input())
#N = int(sys.stdin.readline().rstrip())
(์ฐธ๊ณ ) https://puleugo.tistory.com/42
๐์ด๋ฐ์์ผ๋ก ์ฝ๋๋ฅผ ๋จ์ถ ์ํฌ ์ ์์.
array = []
for _ in range(N) :
array.append(list(map(int, input().split())))
#my_code
#array = []
#for i in range(N):
# x, y = map(int, sys.stdin.readline().rstrip().split())
# array.append([x,y])
๐*๋ฅผ ์ฌ์ฉํ๋ฉด, ๋ฆฌ์คํธ ์์ ์์๋ค๋ง ๊บผ๋ด์ ํ ์ค์ ํ ๋ฒ์ ์ถ๋ ฅํ ์ ์๋ค.
#ex1)
for x in arr:
print(*x)
#ex2)
for i in range(0, N):
print(*arr[i])
#my_code
#for i in range(N):
# print(s_array[i][0], s_array[i][1])
(์ฐธ๊ณ ) https://yeomss.tistory.com/160
'Python > ๋ฐฑ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋ฐฑ์ค 2293๋ฒ : ๋์ 1 (0) | 2023.08.17 |
---|