๋ชฉ๋กํ”„๋กœ๊ทธ๋ž˜๋ฐ (135)

Bibi's DevLog ๐Ÿค“๐ŸŽ

[๋ฐฑ์ค€ 6322] ์ง๊ฐ ์‚ผ๊ฐํ˜•์˜ ๋‘ ๋ณ€ (Swift)

6322๋ฒˆ: ์ง๊ฐ ์‚ผ๊ฐํ˜•์˜ ๋‘ ๋ณ€ a์ œ๊ณฑ + b์ œ๊ณฑ = c์ œ๊ณฑ ์„ ๋งŒ์กฑํ•˜๋Š” ์–‘์ˆ˜ a, b, c ๊ตฌํ•˜๊ธฐ abc ์ค‘ 2๊ฐœ๋Š” ์ž์—ฐ์ˆ˜๋กœ ์ฃผ์–ด์ง ๋ฏธ์ง€์ˆ˜๊ฐ€ a๋ผ๋ฉด a = ์ œ๊ณฑ๊ทผ(c์ œ๊ณฑ - b์ œ๊ณฑ) ๋ฏธ์ง€์ˆ˜๊ฐ€ b๋ผ๋ฉด b = ์ œ๊ณฑ๊ทผ(c์ œ๊ณฑ - a์ œ๊ณฑ) ๋ฏธ์ง€์ˆ˜๊ฐ€ c๋ผ๋ฉด c = ์ œ๊ณฑ๊ทผ(a์ œ๊ณฑ + b์ œ๊ณฑ) ์ œ๊ณฑ๊ทผ ์•ˆ์˜ ์ˆ˜๊ฐ€ 0๋ณด๋‹ค “์ž‘๊ฑฐ๋‚˜”(์Œ์ˆ˜), 0์ผ ๋•Œ ์ง๊ฐ์‚ผ๊ฐํ˜•์„ ๋งŒ๋“ค ์ˆ˜ ์—†๋‹ค. ์Œ์ˆ˜ ์กฐ๊ฑด ๋ฟ ์•„๋‹ˆ๋ผ 0์ด ๋˜๋Š” ์กฐ๊ฑด๋„ ๋”ฐ์ ธ์•ผ ํ•จ์— ์œ ์˜ Swift์˜ sqrt() ํ•จ์ˆ˜๋Š” ํŒŒ๋ผ๋ฏธํ„ฐ๊ฐ€ ์Œ์ˆ˜์ผ ๋•Œ nan์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค. nan์€ type(of:) ๋กœ ํŒ๋ณ„ํ–ˆ์„ ๋• Double์ด์ง€๋งŒ, == ๋กœ ํŒ๋ณ„ํ•  ์ˆ˜ ์—†๋‹ค. ๊ทธ๋ž˜์„œ ์ผ๋‹จ sqrt() ๋‚ด๋ถ€์— ๋„ฃ์„ ์ˆ˜๊ฐ€ 0๋ณด๋‹ค ํฐ์ง€ ํŒ๋ณ„ํ•ด์„œ ํ’€์—ˆ๋‹ค. ๊ณต์‹๋ฌธ์„œ๋ฅผ ์ฐพ์•„๋ณด๋‹ˆ Double.nan ๊ณผ ๊ฐ™์ด ์‚ฌ..

[๋ฐฑ์ค€ 5613] ๊ณ„์‚ฐ๊ธฐ ํ”„๋กœ๊ทธ๋žจ

5613๋ฒˆ: ๊ณ„์‚ฐ๊ธฐ ํ”„๋กœ๊ทธ๋žจ ์ฒซ ์ž…๋ ฅ์€ ๊ทธ๋ƒฅ ์ €์žฅ๋˜๊ณ , ์—ฐ์‚ฐ์ž๋Š” ์ž…๋ ฅ๋งˆ๋‹ค ์ €์žฅํ•˜๊ณ , ๊ทธ ๋‹ค์Œ๋ถ€ํ„ฐ ์ˆซ์ž๊ฐ€ ๋“ค์–ด์˜ฌ ๋•Œ ๋งˆ๋‹ค ๊ฒฐ๊ณผ๊ฐ’์ด ๋ฐ”๋€Œ์–ด์•ผ ํ•œ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด 1 + 1 ์„ ๊ณ„์‚ฐํ•  ๋•Œ 1์€ ์ฒซ ์ž…๋ ฅ์ด๋ฏ€๋กœ ๊ฒฐ๊ณผ๊ฐ’์— ๊ทธ๋ƒฅ ์ €์žฅ ์€ ์—ฐ์‚ฐ์ž์ด๋ฏ€๋กœ ์—ฐ์‚ฐ์ž๋กœ ์ €์žฅ 1์ด ๋“ค์–ด์˜ค๋ฉด ๊ธฐ์กด ๊ฒฐ๊ณผ๊ฐ’์— ์—ฐ์‚ฐ์ž๋ฅผ ํ™œ์šฉํ•ด 1์„ ๊ณ„์‚ฐํ•ด์•ผ ํ•จ → ๊ฒฐ๊ณผ๊ฐ’ ๊ฐฑ์‹  ํ’€์ด var currentResult = 0 var currentOperator = "" while let input = readLine() { guard let intInput = Int(input) else { // ์ž…๋ ฅ์ด ์—ฐ์‚ฐ์ž์ธ์ง€ ์ˆซ์ž์ธ์ง€ ํŒ๋‹จ if input == "=" { break } else { currentOperator = input continue } } swi..

[๋ฐฑ์ค€ 5032] ํƒ„์‚ฐ ์Œ๋ฃŒ (Swift)

5032๋ฒˆ: ํƒ„์‚ฐ ์Œ๋ฃŒ ์˜ˆ์ œ๋ฅผ ๋ณด๊ณ  “9 0 3 ์ธ๋ฐ ์–ด๋–ป๊ฒŒ 3์ด ์•„๋‹ˆ๋ผ 4๊ฐ€ ๋‹ต์ด์ง€??” ๋ผ๋ฉฐ ์ƒ๊ฐํ•˜๋‹ค๊ฐ€, ๊ตฌ๊ธ€๋ง์„ ํ•ด์„œ์•ผ ๋ฌด์Šจ ๋ฌธ์ œ์ธ์ง€ ์ดํ•ดํ–ˆ๋‹ค. ๋นˆ ๋ณ‘์˜ ์ˆ˜๊ฐ€ 9๊ฐœ์ด๊ณ , ์ƒˆ ๋ณ‘ 1๊ฐœ๋กœ ๋ฐ”๊พธ๋Š” ๋ฐ ํ•„์š”ํ•œ ๋นˆ ๋ณ‘์˜ ์ˆ˜๊ฐ€ 3๊ฐœ์ผ ๋•Œ 9 / 3 = 3๊ฐœ์˜ ์ƒˆ ๋ณ‘์„ ๋ฐ›์„ ์ˆ˜ ์žˆ์Œ ๋‹ค ๋งˆ์‹œ๋ฉด 3๊ฐœ์˜ ๋นˆ ๋ณ‘์ด ๋จ ๋”ฐ๋ผ์„œ 3 / 3 = 1๊ฐœ์˜ ์ƒˆ ๋ณ‘์„ ๋ฐ›์•„ ๋˜ ๋งˆ์‹ค ์ˆ˜ ์žˆ์Œ. ๊ทธ๋ž˜์„œ ์ด 4๊ฐœ๋ฅผ ๋งˆ์‹ค ์ˆ˜ ์žˆ๋Š” ๊ฒƒ! ์ฆ‰ ์ƒˆ ๋ณ‘์œผ๋กœ ๋ฐ”๊ฟ€ ๋•Œ ๋งˆ๋‹ค ๊ทธ ๋ชซ์„ ๋นˆ ๋ณ‘ ์ˆ˜์— ๋”ํ•ด์ค˜์•ผ ํ•œ๋‹ค. (๋‹ค ๋งˆ์‹œ๋ฉด ๋นˆ๋ณ‘์ด ๋˜๋ฏ€๋กœ) ํ’€์ด1 (ํ‹€๋ฆผ) let inputArr = readLine()!.split(separator: " ").map { Int($0)! } var bottle = inputArr[0] + inputArr[1] let..