๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ“๊ณต๋ถ€ ํฌ์Šคํ† ๋ฆฌ/์•Œ๊ณ ๋ฆฌ์ฆ˜

[๋ฐฑ์ค€] 2750-2751๋ฒˆ ์ˆ˜ ์ •๋ ฌํ•˜๊ธฐ(Python)/ sys.stdin.readline() ์˜ค๋ฅ˜ ํ•ด๊ฒฐ

by ํšธ์ด˜ 2023. 8. 3.

๐Ÿ“Œ 2750๋ฒˆ - ์ˆ˜ ์ •๋ ฌํ•˜๊ธฐ

 

2750๋ฒˆ: ์ˆ˜ ์ •๋ ฌํ•˜๊ธฐ

์ฒซ์งธ ์ค„์— ์ˆ˜์˜ ๊ฐœ์ˆ˜ N(1 ≤ N ≤ 1,000)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ N๊ฐœ์˜ ์ค„์—๋Š” ์ˆ˜๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์ด ์ˆ˜๋Š” ์ ˆ๋Œ“๊ฐ’์ด 1,000๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ •์ˆ˜์ด๋‹ค. ์ˆ˜๋Š” ์ค‘๋ณต๋˜์ง€ ์•Š๋Š”๋‹ค.

www.acmicpc.net

๐Ÿ’ป ์†Œ์Šค ์ฝ”๋“œ

N = int(input())

arr = []
for i in range(N):
    num = int(input())
    arr.append(num)

for i in range(N-1):
    min_idx = i
    for j in range(i+1, N):
        if arr[min_idx] > arr[j]:
            min_idx = j
    arr[i], arr[min_idx] = arr[min_idx], arr[i]

for i in arr:
    print(i)

๐Ÿ’ก ๋ฌธ์ œ ํ•ด๊ฒฐ

์ˆ˜๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ ๋ฆฌ์ŠคํŠธ์— ๋„ฃ์€ ํ›„, ์ด์ค‘ for๋ฌธ์„ ๋Œ๋ฉฐ ๋‘ ์š”์†Œ์”ฉ ๋น„๊ตํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋” ์ž‘์€ ๊ฐ’์ด ๋‚˜ํƒ€๋‚  ๋•Œ๋งˆ๋‹ค ํ˜„์žฌ ๊ฐ’๋ณด๋‹ค ์•ž์œผ๋กœ ์ˆœ์„œ๋ฅผ ์˜ฎ๊ฒจ์ค๋‹ˆ๋‹ค.
์ด ๋ฌธ์ œ๋Š” ์ž…๋ ฅ๋ฐ›๋Š” ์ˆ˜์˜ ๊ฐœ์ˆ˜ N์˜ ๋ฒ”์œ„๊ฐ€ 1 ≤ N ≤ 1,000์ด๊ธฐ ๋•Œ๋ฌธ์— ๋ณ„๋‹ค๋ฅธ ๋ฌธ์ œ ์—†์ด ํ•ด๊ฒฐ๋ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ N์˜ ๋ฒ”์œ„๊ฐ€ ์ปค์ง€๋ฉด ๋ฌธ์ œ๊ฐ€ ์ƒ๊น๋‹ˆ๋‹ค. ์˜ˆ์‹œ๋กœ _"2751๋ฒˆ ์ˆ˜ ์ •๋ ฌํ•˜๊ธฐ 2"_๋ฅผ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

๐Ÿ“Œ 2751๋ฒˆ - ์ˆ˜ ์ •๋ ฌํ•˜๊ธฐ 2

 

2751๋ฒˆ: ์ˆ˜ ์ •๋ ฌํ•˜๊ธฐ 2

์ฒซ์งธ ์ค„์— ์ˆ˜์˜ ๊ฐœ์ˆ˜ N(1 ≤ N ≤ 1,000,000)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ N๊ฐœ์˜ ์ค„์—๋Š” ์ˆ˜๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์ด ์ˆ˜๋Š” ์ ˆ๋Œ“๊ฐ’์ด 1,000,000๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ •์ˆ˜์ด๋‹ค. ์ˆ˜๋Š” ์ค‘๋ณต๋˜์ง€ ์•Š๋Š”๋‹ค.

www.acmicpc.net

๐Ÿ’ป ์†Œ์Šค์ฝ”๋“œ

# ์ž…๋ ฅ ํšŸ์ˆ˜๊ฐ€ ๋งŽ์•„์ง€๋ฉด ๋น ๋ฅธ ์ž…์ถœ๋ ฅ ํ•„์š” --> sys.stdin.readline() ์ด์šฉ

import sys

N = int(sys.stdin.readline())
num_list = []

for i in range(N):
    num_list.append(int(sys.stdin.readline()))

num_list = sorted(num_list)
for i in num_list:
    print(i)

๐Ÿ’ก ๋ฌธ์ œ ํ•ด๊ฒฐ

๋ฌธ์ œ ํ•ด๊ฒฐ ๋ฐฉ์‹์€ _"2750๋ฒˆ - ์ˆ˜ ์ •๋ ฌํ•˜๊ธฐ"_์™€ ๋‹ค๋ฅด์ง€ ์•Š์Šต๋‹ˆ๋‹ค. 2750๋ฒˆ ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ๊ทธ๋Œ€๋กœ ์จ๋„ ๋‹ต์€ ์ž˜๋งŒ ๋‚˜์˜ต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋ฐฑ์ค€์— ๊ทธ๋Œ€๋กœ ์ œ์ถœํ•˜๋ฉด '์‹œ๊ฐ„ ์ดˆ๊ณผ'๊ฐ€ ๋œฐ ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด ๋ฌธ์ œ๋Š” N์˜ ๋ฒ”์œ„๊ฐ€ 1 ≤ N ≤ 1,000,000์ด๊ธฐ ๋•Œ๋ฌธ์— ์ž…๋ ฅ ํšŸ์ˆ˜๋ฅผ ์ตœ๋Œ€๊นŒ์ง€ ๋ฐ›์„ ๊ฒฝ์šฐ ์‹œ๊ฐ„์ด ์˜ค๋ž˜ ๊ฑธ๋ฆฝ๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๋น ๋ฅธ ์ž…์ถœ๋ ฅ์ด ํ•„์š”ํ•œ๋ฐ, ์ด๋•Œ sys.stdin.readline()์„ ์“ธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ์ด์ค‘ for๋ฌธ์œผ๋กœ ์ •๋ ฌํ•˜๋Š” ๋Œ€์‹ , sorted() ํ•จ์ˆ˜๋ฅผ ์จ์„œ ์‹œ๊ฐ„์„ ๋” ์ค„์—ฌ์คฌ์Šต๋‹ˆ๋‹ค.

๐Ÿšจ ์ฃผ์˜์‚ฌํ•ญ

jupyter์—๋Š” stdin์ด ์ œ๋Œ€๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์—
sys.stdin.readline()๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ œ๋Œ€๋กœ ์ž…๋ ฅ๋ฐ›์ง€ ๋ชปํ•ฉ๋‹ˆ๋‹ค.
๋งˆ์ฐฌ๊ฐ€์ง€๋กœ, jupyter notebook (.ipynb)ํŒŒ์ผ์—์„œ๋„ ์ œ๋Œ€๋กœ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๊ทธ๋Œ€๋กœ ๋ฐฑ์ค€์— ์ œ์ถœํ•ด๋„ ์„ฑ๊ณต์€ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‹ˆ ์ฃผํ”ผํ„ฐ๋‚˜ ์ฃผํ”ผํ„ฐ ๋…ธํŠธ๋ถ์œผ๋กœ ์ž‘์„ฑํ•˜์—ฌ ์ž…๋ ฅ์— ๋ฌธ์ œ๊ฐ€ ์ƒ๊ธด ๋ถ„๋“ค์€
ํŒŒ์ด์ฌ (.py) ํŒŒ์ผ๋กœ ์‹คํ–‰ํ•˜๋ฉด ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋  ๊ฒ๋‹ˆ๋‹ค.