๐Ÿ’ป Dev & CSiOS & Others

[Swift] Checking Even or Odd - Programmers Lv.0 (181944)

Problem: Given a natural number n, write code to output "n is even" if n is even, and "n is odd" if n is odd. https://school.programmers.co.kr/learn/courses/30/lessons/181944 Constraints: 1 โ‰ค n โ‰ค 1,000 Solution: let a = Int(readLine()!)! let resultString = a % 2 == 0 ? "\(a) is even" : "\(a) is odd" print(resultString) Ternary operator(์‚ผํ•ญ ์—ฐ์‚ฐ์ž) ์‚ฌ์šฉํ•ด์„œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐ ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ์ž…๋ จ๋œ ์ˆ˜๋ฅผ 2๋กœ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€๊ฐ€ 0์ธ์ง€ ํ™•์ธํ•˜์—ฌ ์ง์ˆ˜์ธ์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. let a = Int(readLine()!)! print(a, "is", a.isMultiple(of: 2) ? "even" : "odd") Alternatively, you can also determine even/odd status using Swift's isMultiple(of:) function as shown above. ...

June 29, 2023 ยท 1 min ยท Sobamemil
๐Ÿ’ป Dev & CSiOS & Others

[Swift] Rotating String 90 Degrees - Programmers Lv.0 (181945)

Problem: ๋ฌธ์ž์—ด str์ด ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. ๋ฌธ์ž์—ด์„ ์‹œ๊ณ„๋ฐฉํ–ฅ์œผ๋กœ 90๋„ ๋Œ๋ ค์„œ ์•„๋ž˜ ์ž…์ถœ๋ ฅ ์˜ˆ์™€ ๊ฐ™์ด ์ถœ๋ ฅํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ด ๋ณด์„ธ์š”. https://school.programmers.co.kr/learn/courses/30/lessons/181945 Constraints: 1 โ‰ค str์˜ ๊ธธ์ด โ‰ค 10 Solution: readLine()?.forEach { print($0) } ๊ฐ€๋กœ๋กœ ์ œ์‹œ๋œ ๋ฌธ์ž์—ด์„ ์„ธ๋กœ๋กœ ํ•˜๋‚˜์”ฉ ์ถœ๋ ฅํ•˜๋ฉด ๋˜๋Š” ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ๋ฌธ์ž์—ด์„ ํ•˜๋‚˜ํ•˜๋‚˜ ์ˆœํšŒํ•˜๋ฉฐ ์ถœ๋ ฅํ•ด์ฃผ๋ฉด ๋ฉ๋‹ˆ๋‹ค. ์ €๋Š” forEach ๋ฌธ๋ฒ•์„ ์‚ฌ์šฉํ•ด์„œ ๋ฌธ์ž์—ด์„ ํ•˜๋‚˜์”ฉ ์ถœ๋ ฅํ•ด ์ฃผ์—ˆ์Šต๋‹ˆ๋‹ค. ์•„์ง Swift ๋ฌธ๋ฒ•์ด ์–ด์ƒ‰ํ•˜๋‹ค๋ฉด ์•„๋ž˜์™€ ๊ฐ™์ด for in ๋ฌธ์„ ์‚ฌ์šฉํ•˜์—ฌ ํ•ด๊ฒฐํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. let line = readLine()! for character in line { print(character) }

June 22, 2023 ยท 1 min ยท Sobamemil
๐Ÿ’ป Dev & CSiOS & Others

[Swift] Concatenating and Printing Strings - Programmers Lv.0 (181946)

Problem: ๋‘ ๊ฐœ์˜ ๋ฌธ์ž์—ด str1, str2๊ฐ€ ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„๋˜์–ด ์ž…๋ ฅ์œผ๋กœ ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. ์ž…์ถœ๋ ฅ ์˜ˆ์™€ ๊ฐ™์ด str1๊ณผ str2์„ ์ด์–ด์„œ ์ถœ๋ ฅํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ด ๋ณด์„ธ์š”. https://school.programmers.co.kr/learn/courses/30/lessons/181946 Constraints: 1 โ‰ค str1, str2์˜ ๊ธธ์ด โ‰ค 10 Solution: print(readLine()!.components(separatedBy: [" "]).joined().replacingOccurrences(of: " ", with: "")) ๋‘ ๋ฌธ์ž์—ด ์‚ฌ์ด์˜ ๊ณต๋ฐฑ์„ ์ œ๊ฑฐํ•˜๊ณ  ์ถœ๋ ฅํ•˜๋ฉด ๋˜๋Š” ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ๋ฐฉ๋ฒ•์€ ์•„์ฃผ ๋งŽ๊ฒ ์ง€๋งŒ ํ•œ ์ค„๋กœ ํ•ด๊ฒฐํ•ด ๋ณด์•˜์Šต๋‹ˆ๋‹ค. swift์—์„œ๋Š” replacingOccurrences(of:with:)๋ฅผ ์‚ฌ์šฉํ•ด์„œ of ์œ„์น˜์˜ ๋ฌธ์ž์—ด์„ with ๋ฌธ์ž์—ด๋กœ ์‰ฝ๊ฒŒ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

June 20, 2023 ยท 1 min ยท Sobamemil
๐Ÿ’ป Dev & CSiOS & Others

[Swift] Printing Addition Equation - Programmers Lv.0 (181947)

Problem: Given two integers a and b, write code to print the equation format below. a + b = c https://school.programmers.co.kr/learn/courses/30/lessons/181947 Constraints: 1 โ‰ค a, b โ‰ค 100 Solution: let n = readLine()!.components(separatedBy: [" "]).map { Int($0)! } let (a, b) = (n[0], n[1]) let result = a + b print("\(a) + \(b) = \(result)") // ๋˜๋Š” // print(a, "+", b, "=", a + b) ๋ฌธ์ž์—ด์„ ํฌ๋งท์— ๋งž์ถฐ ์ถœ๋ ฅํ•˜๋Š” ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ๋ฌธ์ž์—ด์— ์ง์ ‘ ()์„ ์‚ฌ์šฉํ•ด์„œ ๋ณ€์ˆ˜๋ฅผ ์ถœ๋ ฅํ•  ์ˆ˜๋„ ์žˆ๊ณ , ์•„๋ž˜ ์ฃผ์„์ฒ˜๋Ÿผ ์ฝค๋งˆ(,)๋กœ ๋‚˜๋ˆ ์„œ ์ถœ๋ ฅํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ...

June 20, 2023 ยท 1 min ยท Sobamemil
๐Ÿ’ป Dev & CSiOS & Others

[Swift] Printing Special Characters - Programmers Lv.0 (181948)

Problem: ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ถœ๋ ฅํ•˜๋„๋ก ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ด ์ฃผ์„ธ์š”. !@#$%^&*(\'"<>?:; https://school.programmers.co.kr/learn/courses/30/lessons/181948 Solution: print(#"!@#$%^&*(\'"<>?:;"#) // ๋˜๋Š” // print("!@#$%^&*(\\'\"<>?:;") swift์—์„œ๋Š” ํŠน์ˆ˜๋ฌธ์ž๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ๋ฐ ์—ฌ๋Ÿฌ ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ ์ค‘ ๋ฌธ์ž์—ด ์•ž ๋’ค๋กœ # ์„ ์‚ฌ์šฉํ•˜๋ฉด ํŠน์ˆ˜๋ฌธ์ž๋ฅผ ๊ทธ๋Œ€๋กœ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค. ๋˜๋Š” ์•„๋ž˜ ์ฃผ์„์ฒ˜๋Ÿผ \ ์ด๋‚˜ " ์ฒ˜๋Ÿผ ์ด๋ฏธ ํ‚ค์›Œ๋“œ๋กœ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋Š” ํŠน์ˆ˜๋ฌธ์ž๋“ค์€ ์•ž์— \ ๋ฅผ ํ•˜๋‚˜ ๋ถ™์—ฌ์ฃผ๋ฉด ํŠน์ˆ˜๋ฌธ์ž๊ฐ€ ๋ฌธ์ž์—ด ๊ทธ๋Œ€๋กœ ์ถœ๋ ฅ๋ฉ๋‹ˆ๋‹ค.

June 19, 2023 ยท 1 min ยท Sobamemil
๐Ÿ’ป Dev & CSiOS & Others

[Swift] Swapping Upper and Lowercase - Programmers Lv.0 (181949)

Problem: ์˜์–ด ์•ŒํŒŒ๋ฒณ์œผ๋กœ ์ด๋ฃจ์–ด์ง„ ๋ฌธ์ž์—ด str์ด ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. ๊ฐ ์•ŒํŒŒ๋ฒณ์„ ๋Œ€๋ฌธ์ž๋Š” ์†Œ๋ฌธ์ž๋กœ ์†Œ๋ฌธ์ž๋Š” ๋Œ€๋ฌธ์ž๋กœ ๋ณ€ํ™˜ํ•ด์„œ ์ถœ๋ ฅํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ด ๋ณด์„ธ์š”. https://school.programmers.co.kr/learn/courses/30/lessons/181949 Constraints: 1 โ‰ค str์˜ ๊ธธ์ด โ‰ค 20 str์€ ์•ŒํŒŒ๋ฒณ์œผ๋กœ ์ด๋ฃจ์–ด์ง„ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. Solution: let line = readLine()! let resultString = line.map { character in if character.isLowercase { return character.uppercased() } else { return character.lowercased() } }.joined() print(resultString) // ๋˜๋Š” // print(readLine()?.map { $0.isLowercase ? $0.uppercased() : $0.lowercased() }.joined() ?? "") ์ž…๋ ฅ ๋ฐ›์€ ๊ฐ ๋ฌธ์ž ํ•˜๋‚˜ํ•˜๋‚˜๊ฐ€ ๋Œ€๋ฌธ์ž์ธ์ง€ ์†Œ๋ฌธ์ž์ธ์ง€ ํŒ๋‹จํ•ด์„œ ๋ฐ˜๋Œ€๋กœ ์ถœ๋ ฅํ•˜๋ฉด ๋˜๋Š” ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ...

June 19, 2023 ยท 1 min ยท Sobamemil
๐Ÿ’ป Dev & CSiOS & Others

[Swift] Printing Repeated Strings - Programmers Lv.0 (181950)

Problem: ๋ฌธ์ž์—ด str๊ณผ ์ •์ˆ˜ n์ด ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. str์ด n๋ฒˆ ๋ฐ˜๋ณต๋œ ๋ฌธ์ž์—ด์„ ๋งŒ๋“ค์–ด ์ถœ๋ ฅํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ด ๋ณด์„ธ์š”. https://school.programmers.co.kr/learn/courses/30/lessons/181950 Constraints: 1 โ‰ค str์˜ ๊ธธ์ด โ‰ค 10 1 โ‰ค n โ‰ค 5 Solution: let inp = readLine()!.components(separatedBy: [" "]).map { $0 } let (s1, a) = (inp[0], Int(inp[1])!) let resultString: String = { var string: String = "" for _ in 0..<a { string += s1 } return string }() print(resultString) // ๋˜๋Š” // let resultString = String(repeating: s1, count: a) // print(resultString) ๋ฌธ์ž์—ด์„ n ๋ฒˆ ๋ฐ˜๋ณตํ•ด์„œ ์ด์–ด ๋ถ™์ด๋ฉด ๋˜๋Š” ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ...

June 19, 2023 ยท 1 min ยท Sobamemil
๐Ÿ’ป Dev & CSiOS & Others

[Swift] Printing a and b - Programmers Lv.0 (181951)

Problem: ์ •์ˆ˜ a์™€ b๊ฐ€ ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. ๊ฐ ์ˆ˜๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ ์ž…์ถœ๋ ฅ ์˜ˆ์™€ ๊ฐ™์€ ํ˜•์‹์œผ๋กœ ์ถœ๋ ฅํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ด ๋ณด์„ธ์š”. https://school.programmers.co.kr/learn/courses/30/lessons/181951 Constraints: -100,000 โ‰ค a, b โ‰ค 100,000 Solution: let n = readLine()!.components(separatedBy: [" "]) let (a, b) = (n[0], n[1]) print("a = \(a)\nb = \(b)") // ๋˜๋Š” // print("a =", a) // print("b =", b) ๋‘ ๊ฐ€์ง€์˜ ์ •์ˆ˜๋ฅผ ๊ณต๋ฐฑ ๊ธฐ์ค€์œผ๋กœ ๋‚˜๋ˆˆ ํ›„, ํ˜•์‹์— ๋งž๊ฒŒ ์ถœ๋ ฅ ํ•ด์ฃผ๋ฉด ๋˜๋Š” ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ์ถœ๋ ฅ์€ ์•„์ฃผ ๋‹ค์–‘ํ•œ ๋ฐฉ๋ฒ•์œผ๋กœ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค ~ ...

June 18, 2023 ยท 1 min ยท Sobamemil
๐Ÿ’ป Dev & CSiOS & Others

[Swift] Printing a String - Programmers Lv.0 (181952)

Problem: ๋ฌธ์ž์—ด str์ด ์ฃผ์–ด์งˆ ๋•Œ, str์„ ์ถœ๋ ฅํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ด ๋ณด์„ธ์š”. https://school.programmers.co.kr/learn/courses/30/lessons/181952 Constraints: 1 โ‰ค str์˜ ๊ธธ์ด โ‰ค 1,000,000 str์—๋Š” ๊ณต๋ฐฑ์ด ์—†์œผ๋ฉฐ, ์ฒซ์งธ ์ค„์— ํ•œ ์ค„๋กœ๋งŒ ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. Solution: ์ž…๋ ฅ ๋ฐ›์€ ๋ฌธ์ž์—ด์„ ๊ทธ๋Œ€๋กœ ์ถœ๋ ฅํ•ด์ฃผ๋ฉด ๋˜๋Š” ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. print(readLine() ?? "") readLine ํ•จ์ˆ˜๋Š” optional์„ return ํ•˜๋ฏ€๋กœ ?? ์—ฐ์‚ฐ์ž(nil ๋ณ‘ํ•ฉ ์—ฐ์‚ฐ์ž / coalescing operator)๋ฅผ ์‚ฌ์šฉํ•ด ์ค๋‹ˆ๋‹ค.

June 18, 2023 ยท 1 min ยท Sobamemil