728x90

programmers 14

[Programmers] k์˜ ๊ฐœ์ˆ˜

๋ฌธ์ œ ์„ค๋ช… ๋ฌธ์ œ ํ’€์ด ๊ณผ์ • ์ฒ˜์Œ์—๋Š” string ํ˜•ํƒœ๋กœ ๋ณ€๊ฒฝํ•˜์—ฌ ํฌํ•จ๋˜์–ด ์žˆ์œผ๋ฉด answer +1๋กœ ํ•˜์˜€์ง€๋งŒ, 11์˜ ๊ฒฝ์šฐ 1์„ 2๋ฒˆ count ํ•ด์•ผ ํ•˜์—ฌ ์‹คํŒจ Counter๋กœ ๊ฐฏ์ˆ˜๋ฅผ ์„ผ ํ›„ value ๊ฐ’ ๋ฐ˜ํ™˜ํ•˜์—ฌ ๊ฐœ์ˆ˜๋ฅผ answer์— ๋”ํ•ด์คŒ. from collections import Counter def solution(i, j, k): answer = 0 for num in range(i, j+1): cnt = Counter(list(str(num))) if str(k) in list(map(str, cnt.keys())): answer += cnt[f'{k}'] return answer ๋‹ค๋ฅธ ์‚ฌ๋žŒ์˜ ํ’€์ด count ํ•จ์ˆ˜ ์“ฐ๊ธฐ... def solution(i, j, k): answer = sum([..

Coding test 2023.01.05

[Programmers] ๋‘ ์ •์ˆ˜ ์‚ฌ์ด์˜ ํ•ฉ

๋ฌธ์ œ ์„ค๋ช… ๋ฌธ์ œ ํ’€์ด ๊ณผ์ • ๋ฒ”์œ„๋ฅผ ์ง€์ •ํ•ด์ฃผ๊ธฐ ์œ„ํ•ด a๊ฐ€ b๋ณด๋‹ค ํฐ ๊ฒฝ์šฐ ๋‘ ๊ฐ’์„ ๊ตํ™˜, ๊ฐ’์ด ๊ฐ™์„ ๊ฒฝ์šฐ ๋ฐ”๋กœ ๋ฆฌํ„ดํ•ด์คŒ. ๊ทธ ํ›„ ๋ฒ”์œ„ ๊ฐ’์„ ๋”ํ•ด์คŒ. def solution(a, b): answer = 0 if a b: a, b = b, a for i in range(a, b+1): answer += i return answer ๋‹ค๋ฅธ ์‚ฌ๋žŒ์˜ ํ’€์ด a๊ฐ€ b๋ณด๋‹ค ํฐ ๊ฒฝ์šฐ ๋‘ ๊ฐ’ ๊ตํ™˜ for๋ฌธ์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  ๋ฒ”์œ„์˜ sum์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐ„๋‹จํ•˜๊ฒŒ ํ•ด๊ฒฐ def adder(a, b): # ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•˜์„ธ์š” if a > b: a, b = b, a return sum(range(a,b+1)) - coding test url: https://school..

Coding test 2023.01.04

[Programmers] ํฌ๊ธฐ๊ฐ€ ์ž‘์€ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด

๋ฌธ์ œ ์„ค๋ช… ๋ฌธ์ œ ํ’€์ด ๊ณผ์ • t์˜ ์ž๋ฆฟ์ˆ˜๋งŒํผ ๋ฐ˜๋ณต. ๋‹จ, ๋‚จ์€ ๋ฌธ์ž์—ด์ด p์˜ ๋ฌธ์ž์—ด ๊ธธ์ด๋ณด๋‹ค ์ž‘์œผ๋ฉด ์ค‘๋‹จ t์—์„œ p์˜ ์ž๋ฆฟ์ˆ˜๋งŒํผ slicing ํ›„ ๋น„๊ต, ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์œผ๋ฉด answer์— += 1 def solution(t, p): answer = 0 for i in range(0,len(t)): if (len(t) - i) < len(p): break elif int(t[i:i+len(p)]) = int(t[i:i+len(p)]): answer += 1 return answer - coding test url: https://school.programmers.co.kr/learn/courses/30/lessons/147355 ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ..

Coding test 2023.01.04

[Programmers] ๋กค์ผ€์ดํฌ ์ž๋ฅด๊ธฐ

๋ฌธ์ œ ์„ค๋ช… ๋ฌธ์ œ ํ’€์ด ๊ณผ์ • ์ฒซ ๋ฒˆ์งธ ํ’€์ด for๋ฌธ์œผ๋กœ ๋Œ์•„๊ฐ€๋ฉด์„œ ๊ฐ๊ฐ์˜ ํ† ํ•‘ ์ข…๋ฅ˜ ๊ฐœ์ˆ˜๊ฐ€ ๊ฐ™์œผ๋ฉด answer์— +1 ์‹œ๊ฐ„ ์ดˆ๊ณผ๋กœ ์‹คํŒจ def solution(topping): answer = 0 for i in range(1, len(topping)+1): if len(set(topping[:i])) == len(set(topping[i:])): answer += 1 return answer ๋‘ ๋ฒˆ์งธ ํ’€์ด(๋‹ค๋ฅธ ์‚ฌ๋žŒ ํ’€์ด ์ฐธ๊ณ ) collections์˜ Counter ํ•จ์ˆ˜ ์‚ฌ์šฉ topping์˜ ๊ฐฏ์ˆ˜๋ฅผ๊ฐœ์ˆ˜๋ฅผ ์„ผ ํ›„, ํ•˜๋‚˜์”ฉ cnt dictionary์— ๋„ฃ์–ด๊ฐ€๋ฉด์„œ ๊ฐœ์ˆ˜๋ฅผ ๋น„๊ตํ•จ. ๋‹จ์ˆœ ์Šฌ๋ผ์ด์‹ฑ์ด ์•„๋‹Œ ๋”•์…”๋„ˆ๋ฆฌ ๋ณ€๊ฒฝ์œผ๋กœ ๋ณต์žก๋„ ๊ฐ์†Œ from collections import Counter def solution..

Coding test 2022.12.23

[Programmers] ํ• ์ธ ํ–‰์‚ฌ

๋ฌธ์ œ ์„ค๋ช… ๋ฌธ์ œ ํ’€์ด ๊ณผ์ • want์™€ number๋ฅผ key, value ํ˜•ํƒœ์˜ dictionary๋กœ ๋ณ€๊ฒฝ discount๋ฅผ 10์ผ์”ฉ slicing ํ•˜๋ฉด์„œ dic๊ณผ ๋™์ผํ•  ๋•Œ๋งˆ๋‹ค answer + 1 from collections import Counter def solution(want, number, discount): answer = 0 dic = {item : val for item, val in zip(want, number)} for i in range(len(discount)-9): if dic == Counter(discount[i:i+10]): answer += 1 return answer - coding test url: https://school.programmers.co.kr/learn..

Coding test 2022.12.20

[Programmers] ์ˆซ์ž ์ง๊ฟ

๋ฌธ์ œ ์„ค๋ช… ๋ฌธ์ œ ํ’€์ด ๊ณผ์ • ์ฒซ ๋ฒˆ์งธ ํ’€์ด: ์‹œ๊ฐ„ ์ดˆ๊ณผ from collections import Counter def solution(X, Y): answer = '' inter = list(set(X) & set(Y)) s = [] x = sorted(X, reverse = True) y = sorted(Y, reverse = True) cnt_x = Counter(x) cnt_y = Counter(y) if len(inter) == 0: return '-1' else: for i in sorted(inter, reverse = True): answer += str(i * min(cnt_x[i], cnt_y[i])) if int(answer) == 0: answer = '0' return answer ..

Coding test 2022.12.12

[Programmers] ์‚ผ์ด์‚ฌ

๋ฌธ์ œ ์„ค๋ช… ๋ฌธ์ œํ’€์ด ๊ณผ์ • combination: ์ง€์ • ๊ฐœ์ˆ˜์”ฉ ์ค‘๋ณต ๋ฐฐ์—ด ์—†๋Š” ์กฐํ•ฉ ๋งŒ๋“ค์–ด์ฃผ๋Š” ํ•จ์ˆ˜ combination์„ ์ด์šฉํ•˜์—ฌ ํ•ด๋‹น ๋ฆฌ์ŠคํŠธ์—์„œ 3๊ฐœ์”ฉ ์ค‘๋ณต ์—†๋Š” ์กฐํ•ฉ์„ ๋งŒ๋“ค์–ด ์คŒ list(map(sum, comb)): ์กฐํ•ฉ์˜ sum์„ map์„ ์ด์šฉํ•˜์—ฌ ์ง„ํ–‰ํ•˜์—ฌ list๋กœ ๋งŒ๋“ค์–ด์คŒ answer์— ํ•ฉ์ด 0์ธ ๋ถ€๋ถ„์„ countํ•˜์—ฌ ๋”ํ•ด์คŒ from itertools import combinations def solution(number): answer = 0 comb = list(combinations(number, 3)) cnt = list(map(sum, comb)) answer += cnt.count(0) return answer ์ด๊ฑด ์ง„์งœ ์ž˜ ์งฐ๋‹ค. ๋งŒ์กฑํ•˜๋Š” ์ฝ”๋“œ - coding test url: h..

Coding test 2022.12.12

[Programmers] ์ฝœ๋ผ ๋ฌธ์ œ

๋ฌธ์ œ ์„ค๋ช… ๋ฌธ์ œ ํ’€์ด ๊ณผ์ • ์ฒซ ๋ฒˆ์งธ ํ’€์ด: ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค ์„ฑ๊ณต, ์‹ค์ œ ์ œ์ถœ ์‹คํŒจ def solution(a, b, n): answer = 0 while n >= a: val, div = divmod(n, a) answer += val n = (val*b) + div return answer ๋‘ ๋ฒˆ์งธ ํ’€์ด: answer์— * b ํ•˜๋Š” ๊ฑธ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฑธ ์žŠ์—ˆ๋‹ค..! ์„ฑ๊ณต! def solution(a, b, n): answer = 0 while n >= a: val, div = divmod(n, a) answer += (val*b) n = (val*b) + div return answer - coding test url: https://school.programmers.co.kr/learn/courses/30/..

Coding test 2022.12.12

[Programmers] ํ–„๋ฒ„๊ฑฐ ๋งŒ๋“ค๊ธฐ

๋ฌธ์ œ ์„ค๋ช… ๋ฌธ์ œ ํ’€์ด ๊ณผ์ • ingredient์˜ ์›์†Œ๋ฅผ ํ•˜๋‚˜์”ฉ s์— ๋‹ด๊ณ , ๋’ค์—์„œ 4๋ฒˆ์งธ๋ถ€ํ„ฐ ๋งŒ์•ฝ์— [1, 2, 3, 1]๊ณผ ๋™์ผํ•˜๋‹ค๋ฉด answer += 1 ํ•˜๊ธฐ ์ดˆ๋ฐ˜์— ๋„ˆ๋ฌด ๋ณต์žกํ•˜๊ฒŒ ์ƒ๊ฐํ–ˆ๋‹ค. def solution(ingredient): answer = 0 s = [] for i in ingredient: s.append(i) if s[-4:] == [1, 2, 3, 1]: answer += 1 del s[-4:] return answer - coding test url: https://school.programmers.co.kr/learn/courses/30/lessons/133502 ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ..

Coding test 2022.12.11

[Programmers] ํ‘ธ๋“œ ํŒŒ์ดํŠธ ๋Œ€ํšŒ

๋ฌธ์ œ ์„ค๋ช… ๋ฌธ์ œ ํ’€์ด ๊ณผ์ • ๋น„๊ต์  ์‰ฝ๊ฒŒ ํ‘ผ ๋ฌธ์ œ index 1๋ฒˆ๋ถ€ํ„ฐ 2๋กœ ๋‚˜๋ˆˆ ๋ชซ๋งŒํผ answer์— string type์œผ๋กœ ์ถ”๊ฐ€ํ•ด์ฃผ๊ณ , 0๊ณผ ๋’ค์ง‘์€ answer๋ฅผ ๋ถ™์—ฌ์ค€ ๋ฐฉ์‹ def solution(food): answer = '' for i in range(1, len(food)): cnt = food[i] // 2 answer += str(i) * cnt ans = answer[-1::-1] answer = answer + '0' + ans return answer ๋‹ค๋ฅธ ์‚ฌ๋žŒ ํ’€์ด def solution(food): answer = '' for i,n in enumerate(food[1:]): answer += str(i+1) * (n//2) return answer + "0" + answer[::..

Coding test 2022.12.11
728x90