๐ป Algorithm
-
[Python] ์ด์ฝํ - ์ ๋ ฌ๋ ๋ฐฐ์ด์์ ํน์ ์์ ๊ฐ์ ๊ตฌํ๊ธฐ (์ด์งํ์)๐ป Algorithm/Python 2021. 10. 20. 14:55
๋ฌธ์ ๐ ์ฒซ ๋ฒ์งธ ์๋ - bisect ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ๋ฉด ์ฝ๊ฒ ์ ๋ต์ ์ป์ ์ ์๋ค. from bisect import bisect_left, bisect_right n, x = map(int, input().split()) array = list(map(int, input().split())) diff = bisect_right(array, x) - bisect_left(array, x) if diff == 0: print(-1) else: print(diff) ๐ bisect ๋ผ์ด๋ธ๋ฌ๋ฆฌ - bisect_left(a, x): ๋ฐฐ์ด a์ ์์ x๊ฐ ๋ค์ด๊ฐ ์ ์๋ ๊ฐ์ฅ ์ผ์ชฝ ์ธ๋ฑ์ค๋ฅผ ๋ฐํ - bisect_right(a, x): ๋ฐฐ์ด a์ ์์ x๊ฐ ๋ค์ด๊ฐ ์ ์๋ ๊ฐ์ฅ ์ค๋ฅธ์ชฝ ์ธ๋ฑ์ค๋ฅผ ๋ฐํ
-
[Python] ์ด์ฝํ - ๋ก๋ณถ์ด ๋ก ๋ง๋ค๊ธฐ (์ด์งํ์)๐ป Algorithm/Python 2021. 10. 20. 00:05
๋ฌธ์ ๐ ์ฒซ ๋ฒ์งธ ์๋ (์ ํํ์) - ์ด์งํ์ ํํธ์ธ ๊ฑด ์์ง๋ง ์ ์ด์งํ์์ ์จ์ผ ํ๋์ง ๋ชฐ๋์ - ์ ๋จ๊ธฐ์ ๋์ด๋ฅผ ๊ฐ์ฅ ๊ธด ๋ก์ ๊ธธ์ด๋ก ์ค์ ํ๊ณ 1์ฉ ์ค์ฌ๋๊ฐ๋ฉด์ ์๋ฆฐ ๋ก์ ๊ธธ์ด(rest)์ ํฉ์ ๊ณ์ฐ n, m = map(int, input().split()) height = sorted(list(map(int, input().split())), reverse=True) for i in range(height[0], 0, -1): rest = list(map(lambda x: x-i if x>i else 0, height)) if sum(rest)>=m: print(i) break โ ๋ ๋ฒ์งธ ์๋ (์ด์งํ์) - ๋ก์ ๊ธธ์ด์ ์ ๋จ๊ธฐ์ ๋์ด๋ 0๋ถํฐ 10์ต๊น์ง์ ์ ์ ์ค ํ๋์ด๋ค. - ์ด๋ ๊ฒ ํฐ ํ..
-
[Python] ๋ฐฑ์ค - 11047 ๋์ 0 (Greedy)๐ป Algorithm/Python 2021. 10. 3. 17:35
๐ ์ฒซ ๋ฒ์งธ ์๋ (์๊ฐ์ด๊ณผ) - k๊ฐ๋ณด๋ค ํฐ ๋์ ๊ฐ์ ์ญ์ ํ๊ณ ๋์ ๊ฐ์ ๋ด๋ฆผ์ฐจ์์ผ๋ก ์ ๋ ฌ - while๋ฌธ์ ๋๋ฉด์ ๋์ ๊ฐ ํ๋์ฉ ๋นผ ์ค n, k = map(int, input().split()) coin = [int(input()) for _ in range(n)] coin = list(filter(lambda x: x = 0: k -= i cnt += 1 if k == 0: break print(cnt) โ ๋ ๋ฒ์งธ ์๋ (์ฑ๊ณต) - k๊ฐ๋ณด๋ค ํฐ ๋์ ๊ฐ์ ์ญ์ ํ๊ณ ๋์ ๊ฐ์ ๋ด๋ฆผ์ฐจ์์ผ๋ก ์ ๋ ฌ - k๋ฅผ ๋์ ๊ฐ์ผ๋ก ๋๋ ๋ชซ์ cnt์ ๋ํด์ ์นด์ดํ n, k = map(int, input().split()) coin = [int(input()) for _ in range(n)] coin = list(filt..