[Python-Baekjoon] 1์ฐจ์› ๋ฐฐ์—ด

Beanxxยท2021๋…„ 8์›” 17์ผ
0

Algorithm

๋ชฉ๋ก ๋ณด๊ธฐ
5/10
post-thumbnail

๋ฐฑ์ค€-๋‹จ๊ณ„๋ณ„๋กœ ํ’€์–ด๋ณด๊ธฐ-'1์ฐจ์› ๋ฐฐ์—ด' ํŒŒํŠธ ๋ฌธ์ œ๋“ค ์ค‘ ๊ธฐ์–ตํ•ด์•ผ ํ•  ๊ฐœ๋… ๋ฐ ๋ฌธ์ œ๋“ค์„ ๊ธฐ๋กํ•ฉ๋‹ˆ๋‹ค.

[Baekjoon] 10818. ์ตœ์†Œ, ์ตœ๋Œ€

: ์ตœ์†Ÿ๊ฐ’๊ณผ ์ตœ๋Œ“๊ฐ’์„ ์ฐพ๋Š” ๋ฌธ์ œ

๐Ÿ“˜ 10818 ๋ฌธ์ œ ๋งํฌ

import sys

N = int(sys.stdin.readline())
num = list(map(int, sys.stdin.readline().split()))

print(min(num), max(num))
  • min(), max() ํ•จ์ˆ˜๋ฅผ ์“ฐ๋ฉด ๋”ฐ๋กœ ํ•จ์ˆ˜๋ฅผ ์ •์˜ํ•˜์ง€ ์•Š์•„๋„ ์ตœ์†Œ๊ฐ’, ์ตœ๋Œ€๊ฐ’์„ ๊ตฌํ•  ์ˆ˜ ์žˆ์Œ.
  • N๊ฐœ์˜ ์ •์ˆ˜ ๊ฐœ์ˆ˜๋ฅผ ์ •ํ™•ํžˆ ์ž…๋ ฅํ•˜์ง€ ์•Š์•„๋„ ์˜ค๋ฅ˜๊ฐ€ ๋‚˜์ง€ ์•Š์Œ.
    โ” ์ด ๋ถ€๋ถ„์— ๋Œ€ํ•ด์„œ๋Š” ์˜ค๋ฅ˜๊ฐ€ ๋‚˜์ง€ ์•Š์•„๋„ ์กฐ๊ฑด์— ๋ถ€ํ•ฉํ•˜๋„๋ก ์ฝ”๋“œ ์—…๋ฐ์ดํŠธ ํ•„์š”.


[Baekjoon] 2562. ์ตœ๋Œ“๊ฐ’

: ์ตœ๋Œ“๊ฐ’์ด ์–ด๋””์— ์žˆ๋Š”์ง€ ์ฐพ๋Š” ๋ฌธ์ œ

๐Ÿ“˜ 2562 ๋ฌธ์ œ ๋งํฌ

import sys

num_list = []

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

print(max(num_list))
print(num_list.index(max(num_list))+1)
  • ์ž…๋ ฅํ•˜๋Š” list๊ฐ€ for๋ฌธ ์•ˆ์— ์žˆ์œผ๋ฏ€๋กœ ์ง€์—ญ๋ณ€์ˆ˜๋กœ ์„ ์–ธ๋˜์–ด ์žˆ์Œ.
    โ†ณ ๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— list ํ˜•์‹์˜ ์ „์—ญ๋ณ€์ˆ˜๋กœ ๋˜ ์„ ์–ธํ•ด์ฃผ์–ด์•ผ ํ•จ.
  • index() : list์˜ ์ˆœ์„œ๋ฅผ ์ถœ๋ ฅ. (list ๋ฒˆํ˜ธ๋Š” 0๋ถ€ํ„ฐ ์‹œ์ž‘์ด๋ฏ€๋กœ +1์„ ํ•ด์ฃผ์–ด์•ผ ๋ช‡ ๋ฒˆ์งธ์ธ์ง€ ์ •ํ™•ํ•˜๊ฒŒ ์ถœ๋ ฅ ๊ฐ€๋Šฅ)


[Baekjoon] 2577. ์ˆซ์ž์˜ ๊ฐœ์ˆ˜

: ๊ฐ ์ˆซ์ž๊ฐ€ ๋ช‡ ๋ฒˆ ๋‚˜์™”๋Š”์ง€ ์ €์žฅํ•˜๊ธฐ ์œ„ํ•ด ์ผ์ฐจ์› ๋ฐฐ์—ด์„ ๋งŒ๋“œ๋Š” ๋ฌธ์ œ

๐Ÿ“˜ 2577 ๋ฌธ์ œ ๋งํฌ

import sys

A = int(sys.stdin.readline())
B = int(sys.stdin.readline())
C = int(sys.stdin.readline())

num = str(A * B * C)

for i in range(10):
    print(num.count(str(i)))

1) num ๋ณ€์ˆ˜ ๊ฐ’์„ ๋ฌธ์ž์—ด๋กœ ๋ณ€ํ™˜.
2) ๋ณ€์ˆ˜.count(ํŠน์ • ๊ฐ’) โ†’ ๋ณ€์ˆ˜ ์•ˆ์— ๋“ค์–ด์žˆ๋Š” ํŠน์ • ๊ฐ’์ด ๋ช‡ ๊ฐœ ์ธ์ง€ ์ถœ๋ ฅ.



[Baekjoon] 3052. ๋‚˜๋จธ์ง€

๐Ÿ“˜ 3052 ๋ฌธ์ œ ๋งํฌ

import sys

n_list = []

for i in range(10):
    n = int(sys.stdin.readline())
    n_list.append(n % 42)

sort = set(n_list)
print(len(sort))
  • ์ž…๋ ฅํ•œ ์ˆ˜๋“ค์„ 42๋กœ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€๋ฅผ ๋ฆฌ์ŠคํŠธ๋กœ ์ž…๋ ฅํ•œ ์ˆœ์„œ๋Œ€๋กœ ์ €์žฅ.
  • set() : list ๊ฐ’๋“ค ์ค‘ ์ค‘๋ณต๋œ ๊ฐ’ ์ œ๊ฑฐ ํ›„ ์ •๋ ฌํ•ด์ฃผ๋Š” ํ•จ์ˆ˜.
  • ์ค‘๋ณต๋œ ๊ฐ’ ์ œ๊ฑฐ ํ›„ ๊ธธ์ด๋ฅผ ์ถœ๋ ฅํ•˜๋ฉด ์„œ๋กœ ๋‹ค๋ฅธ ๋‚˜๋จธ์ง€ ๊ฐ’๋“ค์ด ๋ช‡ ๊ฐœ์ธ์ง€ ์ถœ๋ ฅ ๊ฐ€๋Šฅ.


[Baekjoon] 1546. ํ‰๊ท 

: ํ‰๊ท ์„ ์กฐ์ž‘ํ•˜๋Š” ๋ฌธ์ œ

๐Ÿ“˜ 1546 ๋ฌธ์ œ ๋งํฌ

N = int(input())
score = list(map(int, input().split()))
result = 0

for i in range(N):
    result += score[i]/int(max(score)) * 100

print(result/N)


[Baekjoon] 8958. OXํ€ด์ฆˆ

: OX ํ€ด์ฆˆ์˜ ๊ฒฐ๊ณผ๋ฅผ ์ผ์ฐจ์› ๋ฐฐ์—ด๋กœ ์ž…๋ ฅ๋ฐ›์•„ ์ ์ˆ˜๋ฅผ ๊ณ„์‚ฐํ•˜๋Š” ๋ฌธ์ œ

๐Ÿ“˜ 8958 ๋ฌธ์ œ ๋งํฌ

N = int(input())

for i in range(N):
    ox = input()
    ox_list = list(ox)
    score = 0
    result = 0

    for j in range(len(ox)):
        if ox_list[j] == 'O':
            score += 1
            result += score

        elif ox_list[j] == 'X':
            score = 0

    print(result)
  • ์ž…๋ ฅํ•œ ๊ฐ’์„ ๋ฆฌ์ŠคํŠธ์— ์ €์žฅํ•˜๊ณ ,
  • ๊ฐ O,X ๋งˆ๋‹ค ์ผํšŒ์„ฑ ์ ์ˆ˜๋ฅผ ๋ถ€์—ฌํ•  ๋ณ€์ˆ˜๋ฅผ score๋กœ ์ง€์ •.
  • ์ผํšŒ์„ฑ ์ ์ˆ˜๋ฅผ ๋ˆ„์ ์‹œ์ผœ ์ €์žฅ์‹œํ‚ฌ ๋ณ€์ˆ˜๋ฅผ result๋กœ ์ง€์ •.
  • for๋ฌธ ์•ˆ์— ๋‹ค๋ฅธ for๋ฌธ์„ ๋‘์–ด ์ค‘์ฒฉ for๋ฌธ ์‚ฌ์šฉ.

โ— ๊ฐ๊ฐ์˜ ์ž…๋ ฅ ๊ฐ’์— ๋Œ€ํ•ด ์ ์ˆ˜๊ฐ€ ๋ˆ„์ ๋˜์„œ ์ถœ๋ ฅ๋˜์–ด ์›ํ•˜๋Š” ์ถœ๋ ฅ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์˜ค์ง€ ์•Š์•˜๋‹ค,,, ๊ทธ๋ž˜์„œ ํ‘ธ๋Š”๋ฐ ์‹œ๊ฐ„์ด ์˜ค๋ž˜ ๊ฑธ๋ฆผ.
โ— ์ฃผ์˜ โ— print(result)๋ฅผ ์–ด๋””์— ๋‘๋Š”์ง€์— ๋”ฐ๋ผ ์ถœ๋ ฅ ๊ฐ’์ด ๋‹ฌ๋ผ์ง. ์ฃผ์˜ํ•˜์ž!



[Baekjoon] 4344. ํ‰๊ท ์€ ๋„˜๊ฒ ์ง€

๐Ÿ“˜ 4344 ๋ฌธ์ œ ๋งํฌ

C = int(input())

for i in range(C):

    inputs = list(map(int, input().split()))
    num = int(inputs[0])
    del inputs[0]
    inputs_sum = int(sum(inputs))
    mean = inputs_sum / num
    person = 0
    result = 0

    for j in range(num):
        if inputs[j] > mean:
            person += 1

    result = (person/num) * 100
    final = format(result, ".3f")
    print(final + "%")
  • del ๋ฆฌ์ŠคํŠธ์›์†Œ : ๋ฆฌ์ŠคํŠธ์—์„œ ์ž…๋ ฅํ•œ ์›์†Œ ์‚ญ์ œ.
  • round()๋Š” ์†Œ์ˆ˜์  ์•„๋ž˜ ์ž๋ฆฌ์— 0์œผ๋กœ ๋๋‚  ๊ฒฝ์šฐ ํ‘œ์‹œ๋˜์ง€ ์•Š์Œ.
    ex) round(3.10159, 2) โ†’ 3.10์ด ์•„๋‹Œ 3.1 ์ถœ๋ ฅ.
  • ์œ„์˜ ๋ฌธ์ œ ํ•ด๊ฒฐ์„ ์œ„ํ•ด format() ํ•จ์ˆ˜ ์‚ฌ์šฉ.
    โžก format(์ˆ˜, ".3f") : ๋ฐ˜์˜ฌ๋ฆผํ•˜์—ฌ ์†Œ์ˆ˜์  ์…‹์งธ ์ž๋ฆฌ๊นŒ์ง€ ์‹ค์ˆ˜๋กœ ์ถœ๋ ฅ.
profile
FE developer

0๊ฐœ์˜ ๋Œ“๊ธ€