Github & Portfolio
๐ Problem Solving/Programmers(43)
-
[ํ๋ก๊ทธ๋๋จธ์ค-Lv3] ๋์คํฌ ์ปจํธ๋กค๋ฌ / Python
์ฝ๋ฉํ ์คํธ ์ฐ์ต - ๋์คํฌ ์ปจํธ๋กค๋ฌ ํ๋๋์คํฌ๋ ํ ๋ฒ์ ํ๋์ ์์ ๋ง ์ํํ ์ ์์ต๋๋ค. ๋์คํฌ ์ปจํธ๋กค๋ฌ๋ฅผ ๊ตฌํํ๋ ๋ฐฉ๋ฒ์ ์ฌ๋ฌ ๊ฐ์ง๊ฐ ์์ต๋๋ค. ๊ฐ์ฅ ์ผ๋ฐ์ ์ธ ๋ฐฉ๋ฒ์ ์์ฒญ์ด ๋ค์ด์จ ์์๋๋ก ์ฒ๋ฆฌํ๋ ๊ฒ์ ๋๋ค. ์๋ฅผ programmers.co.kr import sys import heapq input = sys.stdin.readline jobs = [list(map(int, input().split())) for _ in range(int(input()))] def solution(jobs): answer, now, i = 0, 0, 0 start = -1 q = [] while i < len(jobs): for job in jobs: if start < job[0]
-
[ํ๋ก๊ทธ๋๋จธ์ค-Lv3] ๋ฒ ์คํธ์จ๋ฒ / Python
์ฝ๋ฉํ ์คํธ ์ฐ์ต - ๋ฒ ์คํธ์จ๋ฒ ์คํธ๋ฆฌ๋ฐ ์ฌ์ดํธ์์ ์ฅ๋ฅด ๋ณ๋ก ๊ฐ์ฅ ๋ง์ด ์ฌ์๋ ๋ ธ๋๋ฅผ ๋ ๊ฐ์ฉ ๋ชจ์ ๋ฒ ์คํธ ์จ๋ฒ์ ์ถ์ํ๋ ค ํฉ๋๋ค. ๋ ธ๋๋ ๊ณ ์ ๋ฒํธ๋ก ๊ตฌ๋ถํ๋ฉฐ, ๋ ธ๋๋ฅผ ์๋กํ๋ ๊ธฐ์ค์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. ์ํ ๋ ธ๋๊ฐ programmers.co.kr import sys from collections import defaultdict input = sys.stdin.readline genres = list(map(str, input().split())) plays = list(map(int, input().split())) def solution(genres, plays): answer = [] genresPlays = defaultdict(int) genresSongs = defaultdict(lambda..
-
[ํ๋ก๊ทธ๋๋จธ์ค-Lv2] ๋ฉ์ฉกํ ์ฌ๊ฐํ / Python
์ฝ๋ฉํ ์คํธ ์ฐ์ต - ๋ฉ์ฉกํ ์ฌ๊ฐํ ๊ฐ๋ก ๊ธธ์ด๊ฐ Wcm, ์ธ๋ก ๊ธธ์ด๊ฐ Hcm์ธ ์ง์ฌ๊ฐํ ์ข ์ด๊ฐ ์์ต๋๋ค. ์ข ์ด์๋ ๊ฐ๋ก, ์ธ๋ก ๋ฐฉํฅ๊ณผ ํํํ๊ฒ ๊ฒฉ์ ํํ๋ก ์ ์ด ๊ทธ์ด์ ธ ์์ผ๋ฉฐ, ๋ชจ๋ ๊ฒฉ์์นธ์ 1cm x 1cm ํฌ๊ธฐ์ ๋๋ค. ์ด ์ข ์ด๋ฅผ ๊ฒฉ์ ์ ์ programmers.co.kr import sys import math input = sys.stdin.readline w, h = map(int, input().split()) def solution(w, h): return w * h - (w+h-math.gcd(w, h)) print(solution(w, h)) ํด์ค ํ๋ค๊ฐ ๋ง๋ ํ ์์ด๋์ด๊ฐ ๊ณ์ ์๊ฐ์ด ์๋์ ํฌ๊ธฐํ๋ค... ์ํผ์งฑ์งฑ ๋ธ๋ก๊ทธ์์ ํด๋ต์ ์ฐพ์์ง๋ง ์ดํด๊ฐ ๋ ํ์ํ๋ค..๐ฅ
-
[ํ๋ก๊ทธ๋๋จธ์ค-Lv2] ์ง์ง์ด ์ ๊ฑฐํ๊ธฐ / Python
์ฝ๋ฉํ ์คํธ ์ฐ์ต - ์ง์ง์ด ์ ๊ฑฐํ๊ธฐ ์ง์ง์ด ์ ๊ฑฐํ๊ธฐ๋, ์ํ๋ฒณ ์๋ฌธ์๋ก ์ด๋ฃจ์ด์ง ๋ฌธ์์ด์ ๊ฐ์ง๊ณ ์์ํฉ๋๋ค. ๋จผ์ ๋ฌธ์์ด์์ ๊ฐ์ ์ํ๋ฒณ์ด 2๊ฐ ๋ถ์ด ์๋ ์ง์ ์ฐพ์ต๋๋ค. ๊ทธ๋ค์, ๊ทธ ๋์ ์ ๊ฑฐํ ๋ค, ์๋ค๋ก ๋ฌธ์์ด์ ์ด์ด ๋ถ programmers.co.kr import sys input = sys.stdin.readline s = input().rstrip() def solution(s): stack = [] for i in s: if len(stack) == 0: stack.append(i) elif stack[-1] == i: stack.pop() else: stack.append(i) if len(stack) == 0: return 1 else: return 0 print(solution(s)) ..
-
[ํ๋ก๊ทธ๋๋จธ์ค-Lv2] ๋ฌธ์์ด ์์ถ / Python
์ฝ๋ฉํ ์คํธ ์ฐ์ต - ๋ฌธ์์ด ์์ถ ๋ฐ์ดํฐ ์ฒ๋ฆฌ ์ ๋ฌธ๊ฐ๊ฐ ๋๊ณ ์ถ์ "์ดํผ์น"๋ ๋ฌธ์์ด์ ์์ถํ๋ ๋ฐฉ๋ฒ์ ๋ํด ๊ณต๋ถ๋ฅผ ํ๊ณ ์์ต๋๋ค. ์ต๊ทผ์ ๋๋์ ๋ฐ์ดํฐ ์ฒ๋ฆฌ๋ฅผ ์ํ ๊ฐ๋จํ ๋น์์ค ์์ถ ๋ฐฉ๋ฒ์ ๋ํด ๊ณต๋ถ๋ฅผ ํ๊ณ ์๋๋ฐ, ๋ฌธ programmers.co.kr import sys input = sys.stdin.readline s = input().rstrip() def solution(s): answer = len(s) for step in range(1, len(s) // 2 + 1): compressed = "" prev = s[0:step] count = 1 for i in range(step, len(s), step): if prev == s[i : i + step]: count += 1 else: c..
-
[ํ๋ก๊ทธ๋๋จธ์ค-Lv2] ๊ตฌ๋ช ๋ณดํธ / Python
์ฝ๋ฉํ ์คํธ ์ฐ์ต - ๊ตฌ๋ช ๋ณดํธ ๋ฌด์ธ๋์ ๊ฐํ ์ฌ๋๋ค์ ๊ตฌ๋ช ๋ณดํธ๋ฅผ ์ด์ฉํ์ฌ ๊ตฌ์ถํ๋ ค๊ณ ํฉ๋๋ค. ๊ตฌ๋ช ๋ณดํธ๋ ์์์ ํ ๋ฒ์ ์ต๋ 2๋ช ์ฉ ๋ฐ์ ํ ์ ์๊ณ , ๋ฌด๊ฒ ์ ํ๋ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, ์ฌ๋๋ค์ ๋ชธ๋ฌด๊ฒ๊ฐ [70kg, 50kg, 80kg, 5 programmers.co.kr import sys input = sys.stdin.readline limit = int(input()) people = list(map(int, input().split())) def solution(people, limit): people.sort() answer = 0 i, j = 0, len(people) - 1 while i