์ฝ”๋“œ ๊ตฌํ˜„๋ ฅ ๊ธฐ๋ฅด๊ธฐ / 2. K๋ฒˆ์งธ ์ˆ˜
ยท
Algorithm/ํŒŒ์ด์ฌ ์ฝ”๋”ฉํ…Œ์ŠคํŠธ
๋‚˜์˜ ํ’€์ด testcase = int(input("ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค์˜ ์ˆ˜๋ฅผ ์ž…๋ ฅ")) # ๋ฐ˜๋ณตํ•  ์ผ€์ด์Šค์˜ ์ˆ˜๋ฅผ ์ง€์ • for i in range(testcase): N,s,e,k = map(int,input().split()) ๊ฐ ์ผ€์ด์Šค๋ณ„ N,s,e,k ์ˆ˜ ์ง€์ • ๋นˆ ๋ฐฐ์—ด์„ ์ƒ์„ฑ N๊ฐœ์˜ ์ˆซ์ž๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ ๋ฆฌ์ŠคํŠธ์— ์ €์žฅ N ๊ฐœ์˜ ์ˆซ์ž์—์„œ s ๋ฒˆ์งธ ๋ถ€ํ„ฐ e ๋ฒˆ์งธ ๊นŒ์ง€์˜ ์ˆ˜๋ฅผ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ —> sort() ์ •๋ ฌ๋œ ๋ฐฐ์—ด์—์„œ k ๋ฒˆ์งธ ์ˆซ์ž —> result[k-1] ์˜ค๋ž˜๊ฑธ๋ ค๋„ ํ’€๊ธดํ–ˆ๋‹ค ๊ฐ•์˜๋ฅผ ๋ณด๊ณ  ์™€๋ณด์ž ——————————————————————————————————————————————————————————————— ์ž˜ ํ’€์—ˆ์Œ ๋‚ด๊ฐ€ ์“ฐ๋Š” ํ”„๋กœ๊ทธ๋žจ์€ ํ•œ์ค„์”ฉ ์ž…๋ ฅ๋ฐ›๊ณ  ์ถœ๋ ฅ๋ฐ›์•„์„œ ๊ฐ•์˜๋ž‘ ๊ฒฐ๊ณผ๊ฐ€ ์ข€ ๋‹ค๋ฆ„ ( ๊ดœํžˆ ๋˜‘๊ฐ™์ด ํ•œ๋‹ค๊ณ ..
์ฝ”๋“œ ๊ตฌํ˜„๋ ฅ ๊ธฐ๋ฅด๊ธฐ / 1. K๋ฒˆ์งธ ์•ฝ์ˆ˜
ยท
Algorithm/ํŒŒ์ด์ฌ ์ฝ”๋”ฉํ…Œ์ŠคํŠธ
๋‚˜์˜ ํ’€์ด ์ž์—ฐ์ˆ˜ N , K ๋ฅผ ์ž…๋ ฅ๋ฐ›๋Š”๋‹ค 1๋ถ€ํ„ฐ ์ž์—ฐ์ˆ˜ N๊นŒ์ง€ ๋ฐ˜๋ณต๋ฌธ์„ ์‹คํ–‰ N์„ ์ฐจ๋ก€๋กœ ๋‚˜๋ˆ ๊ฐ€๋ฉฐ ๋‚˜๋จธ์ง€๊ฐ€ 0์ด ๋˜๋Š” N์„ ์ฐพ๋Š”๋‹ค -> ์ด๊ฒƒ๋“ค์€ N์˜ ์•ฝ์ˆ˜๋“ค์ด๊ฒ ์ง€ ? ๋ฐ˜๋ณต๋ฌธ์˜ ์‹คํ–‰์œผ๋กœ ๋‚˜์˜จ N์˜ ๊ฐ’๋“ค์„ ๋ฐฐ์—ด์— ์ €์žฅํ•œ๋‹ค ๋ฐฐ์—ด[K-1] ๋ฅผ ์ถœ๋ ฅํ•˜์ž N์˜ ์•ฝ์ˆ˜๋“ค์˜ ๊ฐœ์ˆ˜ = ๋ฐฐ์—ด์˜ ๊ธธ์ด : len(arr) i ๋ฐ˜๋ณต -> ์•ฝ์ˆ˜ ์ฐพ์Œ -> cnt 1์ฆ๊ฐ€ -> cnt ์™€ k ๊ฐ’ ํ™•์ธ -> ๊ฐ™๋‹ค๋ฉด break K : N์˜ ์•ฝ์ˆ˜๋“ค์ค‘ K ๋ฒˆ์งธ๋กœ ์ž‘์€ ์ˆ˜ break : ์•ฝ์ˆ˜๋“ค์ค‘์—์„œ k ๋ฒˆ์งธ๋กœ ์ž‘์€ ์ˆ˜๋ฅผ ์ฐพ์•˜๋‹ค๋ฉด ๋ฐ˜๋ณต๋ฌธ์„ ๋น ์ ธ๋‚˜์˜จ๋‹ค for else..
์˜ท๊ฐ€๊ฒŒ ํ• ์ธ ๋ฐ›๊ธฐ / ๋”•์…”๋„ˆ๋ฆฌ(Dictionary) ์ž๋ฃŒํ˜• ํ™œ์šฉํ•˜๊ธฐ
ยท
Algorithm/ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค
๋จธ์“ฑ์ด๋„ค ์˜ท๊ฐ€๊ฒŒ๋Š” 10๋งŒ ์› ์ด์ƒ ์‚ฌ๋ฉด 5%, 30๋งŒ ์› ์ด์ƒ ์‚ฌ๋ฉด 10%, 50๋งŒ ์› ์ด์ƒ ์‚ฌ๋ฉด 20%๋ฅผ ํ• ์ธํ•ด์ค๋‹ˆ๋‹ค. ๊ตฌ๋งคํ•œ ์˜ท์˜ ๊ฐ€๊ฒฉ price๊ฐ€ ์ฃผ์–ด์งˆ ๋•Œ, ์ง€๋ถˆํ•ด์•ผ ํ•  ๊ธˆ์•ก์„ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด๋ณด์„ธ์š”. ์ œํ•œ์‚ฌํ•ญ 10 ≤ price ≤ 1,000,000 price๋Š” 10์› ๋‹จ์œ„๋กœ(1์˜ ์ž๋ฆฌ๊ฐ€ 0) ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. ์†Œ์ˆ˜์  ์ดํ•˜๋ฅผ ๋ฒ„๋ฆฐ ์ •์ˆ˜๋ฅผ returnํ•ฉ๋‹ˆ๋‹ค. ๋”•์…”๋„ˆ๋ฆฌ๋Š” Key์™€ Value๋ฅผ ํ•œ ์Œ์œผ๋กœ ๊ฐ–๋Š” ์ž๋ฃŒํ˜• Key, Value ์Œ ์–ป๊ธฐ(items) >>> a.items() dict_items([('name', 'pey'), ('phone', '010-9999-1234'), ('birth', '1118')]) items ํ•จ์ˆ˜๋Š” Key์™€ Value์˜ ์Œ์„ ํŠœํ”Œ๋กœ ๋ฌถ์€ ..
6045 : [๊ธฐ์ดˆ-์‚ฐ์ˆ ์—ฐ์‚ฐ] ์ •์ˆ˜ 3๊ฐœ ์ž…๋ ฅ๋ฐ›์•„ ํ•ฉ๊ณผ ํ‰๊ท  ์ถœ๋ ฅํ•˜๊ธฐ(์„ค๋ช…)(py)
ยท
Algorithm/CodeUp ๊ธฐ์ดˆ
์ •์ˆ˜ 3๊ฐœ๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ ํ•ฉ๊ณผ ํ‰๊ท ์„ ์ถœ๋ ฅํ•ด๋ณด์ž. ์ž…๋ ฅ ์ •์ˆ˜ 3๊ฐœ๊ฐ€ ๊ณต๋ฐฑ์„ ๋‘๊ณ  ์ž…๋ ฅ๋œ๋‹ค. ์ถœ๋ ฅ ํ•ฉ๊ณผ ํ‰๊ท ์„ ๊ณต๋ฐฑ์„ ๋‘๊ณ  ์ถœ๋ ฅํ•œ๋‹ค. ํ‰๊ท ์€ ์†Œ์ˆซ์  ์ดํ•˜ ์…‹์งธ ์ž๋ฆฌ์—์„œ ๋ฐ˜์˜ฌ๋ฆผํ•˜์—ฌ ๋‘˜์งธ ์ž๋ฆฌ๊นŒ์ง€ ์ถœ๋ ฅํ•œ๋‹ค. ์ž…๋ ฅ ์˜ˆ์‹œ 1 2 3 ์ถœ๋ ฅ 6 2.00 print(f” {num1} {num2:.2f}” ์ฆ‰, f"{์‹ค์ˆ˜:.2f}" ๋Š” '์‹ค์ˆ˜๋ฅผ ์†Œ์ˆ˜ ๋‘๋ฒˆ์งธ ์ž๋ฆฌ๊นŒ์ง€ ํ‘œ๊ธฐํ•˜๊ฒ ๋‹ค' ๋Š” ์˜๋ฏธ๋กœ ์‚ฌ์šฉํ•˜์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
6044 : [๊ธฐ์ดˆ-์‚ฐ์ˆ ์—ฐ์‚ฐ] ์ •์ˆ˜ 2๊ฐœ ์ž…๋ ฅ๋ฐ›์•„ ์ž๋™ ๊ณ„์‚ฐํ•˜๊ธฐ(py)
ยท
Algorithm/CodeUp ๊ธฐ์ดˆ
์ •์ˆ˜ 2๊ฐœ(a, b)๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ ํ•ฉ, ์ฐจ, ๊ณฑ, ๋ชซ, ๋‚˜๋จธ์ง€, ๋‚˜๋ˆˆ ๊ฐ’์„ ์ž๋™์œผ๋กœ ๊ณ„์‚ฐํ•ด๋ณด์ž. ๋‹จ, b๋Š” 0์ด ์•„๋‹ˆ๋‹ค. ์ž…๋ ฅ ์ •์ˆ˜ 2๊ฐœ๊ฐ€ ๊ณต๋ฐฑ์„ ๋‘๊ณ  ์ž…๋ ฅ๋œ๋‹ค. ์ถœ๋ ฅ ์ฒซ ๋ฒˆ์งธ ์ค„์— ํ•ฉ ๋‘ ๋ฒˆ์งธ ์ค„์— ์ฐจ, ์„ธ ๋ฒˆ์งธ ์ค„์— ๊ณฑ, ๋„ค ๋ฒˆ์งธ ์ค„์— ๋ชซ, ๋‹ค์„ฏ ๋ฒˆ์งธ ์ค„์— ๋‚˜๋จธ์ง€, ์—ฌ์„ฏ ๋ฒˆ์งธ ์ค„์— ๋‚˜๋ˆˆ ๊ฐ’์„ ์ˆœ์„œ๋Œ€๋กœ ์ถœ๋ ฅํ•œ๋‹ค. (์‹ค์ˆ˜, ์†Œ์ˆ˜์  ์ดํ•˜ ๋‘˜์งธ ์ž๋ฆฌ๊นŒ์ง€์˜ ์ •ํ™•๋„๋กœ ์ถœ๋ ฅ) ์ž…๋ ฅ ์˜ˆ์‹œ 10 3 ์ถœ๋ ฅ ์˜ˆ์‹œ 13 7 30 3 1 3.33 ์ฆ‰, format(์‹ค์ˆ˜, ".2f") ๋Š” '์‹ค์ˆ˜๋ฅผ ์†Œ์ˆ˜ ๋‘๋ฒˆ์งธ ์ž๋ฆฌ๊นŒ์ง€ ํ‘œ๊ธฐํ•˜๊ฒ ๋‹ค' ๋Š” ์˜๋ฏธ๋กœ ์‚ฌ์šฉํ•˜์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
ํ”ผ์ž ๋‚˜๋ˆ  ๋จน๊ธฐ (2) / ์ตœ์†Œ๊ณต๋ฐฐ์ˆ˜ / ์ตœ๋Œ€๊ณต์•ฝ์ˆ˜ / lcm / gcd
ยท
Algorithm/ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค
๋จธ์“ฑ์ด๋„ค ํ”ผ์ž๊ฐ€๊ฒŒ๋Š” ํ”ผ์ž๋ฅผ ์—ฌ์„ฏ ์กฐ๊ฐ์œผ๋กœ ์ž˜๋ผ ์ค๋‹ˆ๋‹ค. ํ”ผ์ž๋ฅผ ๋‚˜๋ˆ ๋จน์„ ์‚ฌ๋žŒ์˜ ์ˆ˜ n์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์งˆ ๋•Œ, n๋ช…์ด ์ฃผ๋ฌธํ•œ ํ”ผ์ž๋ฅผ ๋‚จ๊ธฐ์ง€ ์•Š๊ณ  ๋ชจ๋‘ ๊ฐ™์€ ์ˆ˜์˜ ํ”ผ์ž ์กฐ๊ฐ์„ ๋จน์–ด์•ผ ํ•œ๋‹ค๋ฉด ์ตœ์†Œ ๋ช‡ ํŒ์„ ์‹œ์ผœ์•ผ ํ•˜๋Š”์ง€๋ฅผ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด๋ณด์„ธ์š”. ์ž…์ถœ๋ ฅ ์˜ˆ n result 6 1 10 5 4 2 ์ตœ๋Œ€๊ณต์•ฝ์ˆ˜ , ์ตœ์†Œ๊ณต๋ฐฐ์ˆ˜
6043 : [๊ธฐ์ดˆ-์‚ฐ์ˆ ์—ฐ์‚ฐ] ์‹ค์ˆ˜ 2๊ฐœ ์ž…๋ ฅ๋ฐ›์•„ ๋‚˜๋ˆˆ ๊ฒฐ๊ณผ ๊ณ„์‚ฐํ•˜๊ธฐ(py)
ยท
Algorithm
์‹ค์ˆ˜ 2๊ฐœ(f1, f2)๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ f1 ์„ f2 ๋กœ ๋‚˜๋ˆˆ ๊ฐ’์„ ์ถœ๋ ฅํ•ด๋ณด์ž. ์ด ๋•Œ ์†Œ์ˆซ์  ๋„ท์งธ์ž๋ฆฌ์—์„œ ๋ฐ˜์˜ฌ๋ฆผํ•˜์—ฌ ๋ฌด์กฐ๊ฑด ์†Œ์ˆซ์  ์…‹์งธ ์ž๋ฆฌ๊นŒ์ง€ ์ถœ๋ ฅํ•œ๋‹ค. ์ž…๋ ฅ 2๊ฐœ์˜ ์‹ค์ˆ˜(f1, f2)๊ฐ€ ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„๋˜์–ด ์ž…๋ ฅ๋œ๋‹ค. ์ถœ๋ ฅ f1์„ f2๋กœ ๋‚˜๋ˆˆ ๊ฒฐ๊ณผ๋ฅผ ์†Œ์ˆซ์  ์ดํ•˜ ๋„ท์งธ ์ž๋ฆฌ์—์„œ ๋ฐ˜์˜ฌ๋ฆผํ•˜์—ฌ ์†Œ์ˆซ์  ์„ธ ๋ฒˆ์งธ ์ž๋ฆฌ๊นŒ์ง€ ์ถœ๋ ฅํ•œ๋‹ค. ์ž…๋ ฅ ์˜ˆ์‹œ 10.0 3.0 ์ถœ๋ ฅ ์˜ˆ์‹œ 3.333
์ตœ๋นˆ๊ฐ’ ๊ตฌํ•˜๊ธฐ / ๋”•์…”๋„ˆ๋ฆฌ๋ž€? /
ยท
Algorithm/ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค
์ตœ๋นˆ๊ฐ’์€ ์ฃผ์–ด์ง„ ๊ฐ’ ์ค‘์—์„œ ๊ฐ€์žฅ ์ž์ฃผ ๋‚˜์˜ค๋Š” ๊ฐ’์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์ •์ˆ˜ ๋ฐฐ์—ด array๊ฐ€ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์งˆ ๋•Œ, ์ตœ๋นˆ๊ฐ’์„ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด๋ณด์„ธ์š”. ์ตœ๋นˆ๊ฐ’์ด ์—ฌ๋Ÿฌ ๊ฐœ๋ฉด -1์„ return ํ•ฉ๋‹ˆ๋‹ค. array result [1, 2, 3, 3, 3, 4] 3 [1, 1, 2, 2] -1 [1] 1 ์ž…์ถœ๋ ฅ ์˜ˆ #1 [1, 2, 3, 3, 3, 4]์—์„œ 1์€ 1๊ฐœ 2๋Š” 1๊ฐœ 3์€ 3๊ฐœ 4๋Š” 1๊ฐœ๋กœ ์ตœ๋นˆ๊ฐ’์€ 3์ž…๋‹ˆ๋‹ค. times_dict = {} # ๋น„์–ด ์žˆ๋Š” ๋”•์…”๋„ˆ๋ฆฌ๋ฅผ ์ƒ์„ฑ for num in array: # ๋งค๊ฐœ๋ณ€์ˆ˜ array ์›์†Œ ์ˆœ์ฐจ { array์›์†Œ : ์ตœ๋นˆ๊ฐ’ } ๋”•์…”๋„ˆ๋ฆฌ๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ์นด์šดํ„ฐ๋ฅผ ์ฆ๊ฐ€์‹œํ‚ค์ž if num not in times_dict: # ๋นˆ ๋ฐฐ์—ด์ด๊ธฐ ๋•Œ๋ฌธ์— ti..