s t u d y . . ๐Ÿง/coding test

[softeer] level 2 : ๊ธˆ๊ณ ํ„ธ์ด/8๋‹จ ๋ณ€์†๊ธฐ/์žฅ์• ๋ฌผ ์ธ์‹ ํ”„๋กœ๊ทธ๋žจ

H J 2023. 5. 25. 15:54

๊ธˆ๊ณ ํ„ธ์ด

 

Softeer

์—ฐ์Šต๋ฌธ์ œ๋ฅผ ๋‹ด์„ Set์„ ์„ ํƒํ•ด์ฃผ์„ธ์š”. ์ทจ์†Œ ํ™•์ธ

softeer.ai

์ด๋ ‡๊ฒŒ p๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋‚ด๋ฆผ์ฐจ์ˆœ ์ •๋ ฌํ•ด์ฃผ๊ณ !

import sys

read = sys.stdin.readline

W, N = map(int, read().split())

price = [list(map(int, read().split())) for _ in range(N)]
price.sort(key=lambda x:x[1], reverse=True)

total = 0
for m, p in price:
    if W < m:
        total += W * p
        break
    else:
        total += m * p
        W -= m

print(total)

 

8๋‹จ ๋ณ€์†๊ธฐ

 

Softeer

์—ฐ์Šต๋ฌธ์ œ๋ฅผ ๋‹ด์„ Set์„ ์„ ํƒํ•ด์ฃผ์„ธ์š”. ์ทจ์†Œ ํ™•์ธ

softeer.ai

import sys

read = sys.stdin.readline

num = list(map(int, read().split()))

num_list = [1, 2, 3, 4, 5, 6, 7, 8]

if num == num_list:
    print("ascending")
elif num == sorted(num_list, reverse=True):
    print("descending")
else:
    print("mixed")

ใ„ด ์ด๋Ÿฐ ๊ฑธ ์˜๋„ํ•œ ๊ฒŒ ๋งž๋Š”๊ฐ€... ๋‚ด๋Š” ๋ชจ๋ฅด๊ฒŸ๋‹ค

 

์žฅ์• ๋ฌผ ์ธ์‹ ํ”„๋กœ๊ทธ๋žจ

 

Softeer

์—ฐ์Šต๋ฌธ์ œ๋ฅผ ๋‹ด์„ Set์„ ์„ ํƒํ•ด์ฃผ์„ธ์š”. ์ทจ์†Œ ํ™•์ธ

softeer.ai

import sys
from collections import deque

read = sys.stdin.readline

dy = [-1, 0, 1, 0]
dx = [0, -1, 0, 1]

def out_of_range(y, x):
    return y < 0 or x < 0 or y >= N or x >= N

def bfs(y, x):
    que = deque()
    que.append([y, x])
    visited[y][x] = True

    cnt = 1 # block์ด 1์ผ ๋•Œ๋ถ€ํ„ฐ ๋“ค์–ด์˜ค๊ธฐ ๋•Œ๋ฌธ์— 1๋กœ ์ดˆ๊ธฐํ™”

    while que:
        sy, sx = que.popleft()
        for i in range(4):
            ny = sy + dy[i]
            nx = sx + dx[i]
            if out_of_range(ny, nx) or visited[ny][nx] or block[ny][nx] != 1:
                continue
            else:
                que.append([ny, nx])
                visited[ny][nx] = True
                cnt += 1
    return cnt


N = int(read())
block = [list(map(int, input())) for _ in range(N)]

visited = [[False] * N for _ in range(N)]

result = []
for i in range(N):
    for j in range(N):
        if block[i][j] == 1 and not visited[i][j]:
            result.append(bfs(i,j))

print(len(result))

result.sort()

for i in result:
    print(i)

's t u d y . . ๐Ÿง > coding test' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[softeer] level 1 !! ๐Ÿ’ฅ  (0) 2023.05.25