๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

swift230

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค LV.0] ์ปจํŠธ๋กค ์ œํŠธ ์ปจํŠธ๋กค ์ œํŠธ ๋ฌธ์ œ ์„ค๋ช… ์ˆซ์ž์™€ "Z"๊ฐ€ ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„๋˜์–ด ๋‹ด๊ธด ๋ฌธ์ž์—ด์ด ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. ๋ฌธ์ž์—ด์— ์žˆ๋Š” ์ˆซ์ž๋ฅผ ์ฐจ๋ก€๋Œ€๋กœ ๋”ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์ด๋•Œ "Z"๊ฐ€ ๋‚˜์˜ค๋ฉด ๋ฐ”๋กœ ์ „์— ๋”ํ–ˆ๋˜ ์ˆซ์ž๋ฅผ ๋บ€๋‹ค๋Š” ๋œป์ž…๋‹ˆ๋‹ค. ์ˆซ์ž์™€ "Z"๋กœ ์ด๋ฃจ์–ด์ง„ ๋ฌธ์ž์—ด s๊ฐ€ ์ฃผ์–ด์งˆ ๋•Œ, ๋จธ์“ฑ์ด๊ฐ€ ๊ตฌํ•œ ๊ฐ’์„ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด ๋ณด์„ธ์š”. ์ œํ•œ ์‚ฌํ•ญ 1 ≤ s์˜ ๊ธธ์ด ≤ 200 -1,000 Int { var s = s.split(separator: " ").map{String($0)} while s.contains("Z"){ var index = s.firstIndex(of: "Z")! if index - 1 >= 0 { s.remove(at: index) s.remove(at: index - 1) }else{ s.re.. 2022. 12. 30.
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค LV.0] ์†Œ์ธ์ˆ˜๋ถ„ํ•ด ์†Œ์ธ์ˆ˜๋ถ„ํ•ด ๋ฌธ์ œ ์„ค๋ช… ์†Œ์ธ์ˆ˜๋ถ„ํ•ด๋ž€ ์–ด๋–ค ์ˆ˜๋ฅผ ์†Œ์ˆ˜๋“ค์˜ ๊ณฑ์œผ๋กœ ํ‘œํ˜„ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด 12๋ฅผ ์†Œ์ธ์ˆ˜ ๋ถ„ํ•ดํ•˜๋ฉด 2 * 2 * 3์œผ๋กœ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ 12์˜ ์†Œ์ธ์ˆ˜๋Š” 2์™€ 3์ž…๋‹ˆ๋‹ค. ์ž์—ฐ์ˆ˜ n์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์งˆ ๋•Œ n์˜ ์†Œ์ธ์ˆ˜๋ฅผ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ๋‹ด์€ ๋ฐฐ์—ด์„ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด ์ฃผ์„ธ์š”. ์ œํ•œ ์‚ฌํ•ญ 2 ≤ n ≤ 10,000 ์ž…์ถœ๋ ฅ ์˜ˆ n result 12 [2, 3] 17 [17] 420 [2, 3, 5, 7] ์ž…์ถœ๋ ฅ ์˜ˆ ์„ค๋ช… ์ž…์ถœ๋ ฅ ์˜ˆ #1 12๋ฅผ ์†Œ์ธ์ˆ˜๋ถ„ํ•ดํ•˜๋ฉด 2 * 2 * 3์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ [2, 3]์„ return ํ•ฉ๋‹ˆ๋‹ค. ์ž…์ถœ๋ ฅ ์˜ˆ #2 17์€ ์†Œ์ˆ˜์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ [17]์„ return ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ž…์ถœ๋ ฅ ์˜ˆ #3 420์„ ์†Œ์ธ์ˆ˜๋ถ„ํ•ดํ•˜๋ฉด 2 * 2 * .. 2022. 12. 30.
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค LV.0] ์ˆจ์–ด์žˆ๋Š” ์ˆซ์ž์˜ ๋ง์…ˆ (1) ์ˆจ์–ด์žˆ๋Š” ์ˆซ์ž์˜ ๋ง์…ˆ ๋ฌธ์ œ ์„ค๋ช… ๋ฌธ์ž์—ด my_string์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. my_string์•ˆ์˜ ๋ชจ๋“  ์ž์—ฐ์ˆ˜๋“ค์˜ ํ•ฉ์„ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด ์ฃผ์„ธ์š”. ์ œํ•œ ์‚ฌํ•ญ 1 ≤ my_string์˜ ๊ธธ์ด ≤ 1,000 my_string์€ ์†Œ๋ฌธ์ž, ๋Œ€๋ฌธ์ž ๊ทธ๋ฆฌ๊ณ  ํ•œ์ž๋ฆฌ ์ž์—ฐ์ˆ˜๋กœ๋งŒ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ž…์ถœ๋ ฅ ์˜ˆ my_string result "aAb1B2cC34oOp" 10 "1a2b3c4d123" 16 ์ž…์ถœ๋ ฅ ์˜ˆ ์„ค๋ช… ์ž…์ถœ๋ ฅ ์˜ˆ #1 "aAb1B2cC34oOp"์•ˆ์˜ ํ•œ์ž๋ฆฌ ์ž์—ฐ์ˆ˜๋Š” 1, 2, 3, 4์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ 1 + 2 + 3 + 4 = 10์„ return ํ•ฉ๋‹ˆ๋‹ค. ์ž…์ถœ๋ ฅ ์˜ˆ #2 "1a2b3c4d123Z"์•ˆ์˜ ํ•œ์ž๋ฆฌ ์ž์—ฐ์ˆ˜๋Š” 1, 2, 3, 4, 1, 2, 3์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ .. 2022. 12. 30.
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค LV.0] ๋ฌธ์ž์—ด ์ •๋ ฌํ•˜๊ธฐ (1) ๋ฌธ์ž์—ด ์ •๋ ฌํ•˜๊ธฐ ๋ฌธ์ œ ์„ค๋ช… ๋ฌธ์ž์—ด my_string์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์งˆ ๋•Œ, my_string ์•ˆ์— ์žˆ๋Š” ์ˆซ์ž๋งŒ ๊ณจ๋ผ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌํ•œ ๋ฆฌ์ŠคํŠธ๋ฅผ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์ž‘์„ฑํ•ด ๋ณด์„ธ์š”. ์ œํ•œ ์‚ฌํ•ญ 1 ≤ my_string์˜ ๊ธธ์ด ≤ 100 my_string์—๋Š” ์ˆซ์ž๊ฐ€ ํ•œ ๊ฐœ ์ด์ƒ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. my_string์€ ์˜์–ด ์†Œ๋ฌธ์ž ๋˜๋Š” 0๋ถ€ํ„ฐ 9๊นŒ์ง€์˜ ์ˆซ์ž๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž…์ถœ๋ ฅ ์˜ˆ my_string result "hi12392" [1, 2, 2, 3, 9] "p2o4i8gj2" [2, 2, 4, 8] "abcde0" [0] ์ž…์ถœ๋ ฅ ์˜ˆ ์„ค๋ช… ์ž…์ถœ๋ ฅ ์˜ˆ #1 "hi12392"์— ์žˆ๋Š” ์ˆซ์ž 1, 2, 3, 9, 2๋ฅผ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌํ•œ [1, 2, 2, 3, 9]๋ฅผ return ํ•ฉ๋‹ˆ๋‹ค. ์ž….. 2022. 12. 30.
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค LV.0] ๋ชจ์Œ ์ œ๊ฑฐ ๋ชจ์Œ ์ œ๊ฑฐ ๋ฌธ์ œ ์„ค๋ช… ์˜์–ด์—์„  a, e, i, o, u ๋‹ค์„ฏ ๊ฐ€์ง€ ์•ŒํŒŒ๋ฒณ์„ ๋ชจ์Œ์œผ๋กœ ๋ถ„๋ฅ˜ํ•ฉ๋‹ˆ๋‹ค. ๋ฌธ์ž์—ด my_string์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์งˆ ๋•Œ ๋ชจ์Œ์„ ์ œ๊ฑฐํ•œ ๋ฌธ์ž์—ด์„ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด ์ฃผ์„ธ์š”. ์ œํ•œ ์‚ฌํ•ญ my_string์€ ์†Œ๋ฌธ์ž์™€ ๊ณต๋ฐฑ์œผ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ์Šต๋‹ˆ๋‹ค. 1 ≤ my_string์˜ ๊ธธ์ด ≤ 1,000 ์ž…์ถœ๋ ฅ ์˜ˆ my_string result "bus" "bs" "nice to meet you" "nc t mt y" ์ž…์ถœ๋ ฅ ์˜ˆ ์„ค๋ช… ์ž…์ถœ๋ ฅ ์˜ˆ #1 "bus"์—์„œ ๋ชจ์Œ u๋ฅผ ์ œ๊ฑฐํ•œ "bs"๋ฅผ return ํ•ฉ๋‹ˆ๋‹ค. ์ž…์ถœ๋ ฅ ์˜ˆ #2 "nice to meet you"์—์„œ ๋ชจ์Œ i, o, e, u๋ฅผ ๋ชจ๋‘ ์ œ๊ฑฐํ•œ "nc t mt y"๋ฅผ return ํ•ฉ๋‹ˆ๋‹ค. ์ œ์ถœ import F.. 2022. 12. 30.
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค LV.0] ํŒฉํ† ๋ฆฌ์–ผ ํŒฉํ† ๋ฆฌ์–ผ ๋ฌธ์ œ ์„ค๋ช… iํŒฉํ† ๋ฆฌ์–ผ (i!)์€ 1๋ถ€ํ„ฐ i๊นŒ์ง€ ์ •์ˆ˜์˜ ๊ณฑ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด 5! = 5 * 4 * 3 * 2 * 1 = 120์ž…๋‹ˆ๋‹ค. ์ •์ˆ˜ n์ด ์ฃผ์–ด์งˆ ๋•Œ ๋‹ค์Œ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ๊ฐ€์žฅ ํฐ ์ •์ˆ˜ i๋ฅผ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด ์ฃผ์„ธ์š”. i! ≤ n ์ œํ•œ ์‚ฌํ•ญ 0 Int { if n == 1 {return 1} var num = 2, index = 2 while true{ num *= (index+1) if num > n {return index} index += 1 } return index } ๋ˆ„์ ๊ณฑ์ด n ๋ณด๋‹ค ์ปค์งˆ ๋•Œ๊นŒ์ง€ 1์”ฉ ์ฆ๊ฐ€์‹œํ‚ค๋ฉด์„œ ๊ณฑํ•ด์ค€๋‹ค 2022. 12. 30.
๋ฐ˜์‘ํ˜•