์ ์ฒด ๊ธ
-
ํ๋ก๊ทธ๋๋จธ์ค - ๋ ํ ํฉ ๊ฐ๊ฒ ๋ง๋ค๊ธฐAlgorithm 2022. 12. 9. 14:13
์๋ ๋ฌธ์ ๋ ํ๋ก๊ทธ๋๋จธ์ค์์ ์ ๊ณตํ๋ ๋ ํ ํฉ ๊ฐ๊ฒ ๋ง๋ค๊ธฐ์ ๋ฌธ์ ์ ๋๋ค๐ง๐ป๐ป ๋ฌธ์ ์ ์ ๋๋ณด๊ธฐ ์์ ์ ์ n์ด ์ฃผ์ด์ง๋๋ค. ์ด ์ซ์๋ฅผ k์ง์๋ก ๋ฐ๊ฟจ์ ๋, ๋ณํ๋ ์ ์์ ์๋ ์กฐ๊ฑด์ ๋ง๋ ์์(Prime number)๊ฐ ๋ช ๊ฐ์ธ์ง ์์๋ณด๋ ค ํฉ๋๋ค. 0P0์ฒ๋ผ ์์ ์์ชฝ์ 0์ด ์๋ ๊ฒฝ์ฐ P0์ฒ๋ผ ์์ ์ค๋ฅธ์ชฝ์๋ง 0์ด ์๊ณ ์ผ์ชฝ์๋ ์๋ฌด๊ฒ๋ ์๋ ๊ฒฝ์ฐ 0P์ฒ๋ผ ์์ ์ผ์ชฝ์๋ง 0์ด ์๊ณ ์ค๋ฅธ์ชฝ์๋ ์๋ฌด๊ฒ๋ ์๋ ๊ฒฝ์ฐ P์ฒ๋ผ ์์ ์์ชฝ์ ์๋ฌด๊ฒ๋ ์๋ ๊ฒฝ์ฐ ๋จ, P๋ ๊ฐ ์๋ฆฟ์์ 0์ ํฌํจํ์ง ์๋ ์์์ ๋๋ค. ์๋ฅผ ๋ค์ด, 101์ P๊ฐ ๋ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, 437674์ 3์ง์๋ก ๋ฐ๊พธ๋ฉด 211020101011์ ๋๋ค. ์ฌ๊ธฐ์ ์ฐพ์ ์ ์๋ ์กฐ๊ฑด์ ๋ง๋ ์์๋ ์ผ์ชฝ๋ถํฐ ์์๋๋ก 211, 2, 11..
-
SwiftUI - refreshableSwiftUI 2022. 12. 8. 10:16
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค๐ ์ด๋ฒ ํฌ์คํ ์์๋ SwiftUI์ List์์ ์ฌ์ฉ ๊ฐ๋ฅํ refreshable์ด๋ผ๋ ์๋ก ๊ณ ์นจ ๊ธฐ๋ฅ์ ๋ํด ์์๋ณด๊ฒ ์ต๋๋ค๐ ์ฐ์ ํด๋น ๊ธฐ๋ฅ์ iOS 15 ๋ถํฐ ์ฌ์ฉ์ด ๊ฐ๋ฅํด์! ์ฐธ๊ณ ๋ก WWDC2021์์ ์๊ฐ๋์์ต๋๋ค. ๋น๊ต์ ์ด๋ป๊ฒ ๋ณด๋ฉด ์ต์ ๋ฉ์๋์ด๊ธฐ์ ํ์ ์์ 13, 14๋ถํฐ ์ง์์ ํ๋ค๋ฉด ์ฌ์ฉํ ์ ์์ต๋๋ค. ๊ทธ๋ ์ง๋ง ์์ผ๋ก ๋ฏธ๋๋ฉ ํ๊ฒ์ ์ ์ฐจ ์ฌ๋ ค๊ฐ๊ฒ์ด๊ณ ๋ฐฐ์๋๋ฉด ์ข๊ธฐ์ ์ด์ฐธ์ ํ๋ฒ ํธ๋ผ์ด ํด๋ด ๋๋ค๐ ์ฌ๋ฌ๋ถ ๋ชจ๋ ํ ์ด๋ธ๋ทฐ ํน์ ์ปฌ๋ ์ ๋ทฐ๋ก ๋ ์ฆ, ๋ฆฌ์คํธ๋ก ๋ฐ์ดํฐ๊ฐ ๋ฟ๋ ค์ง ๋ทฐ์ ๊ฒฝ์ฐ ์ต์๋จ์์ ์๋๋ก ๋๋๊น ์ ์๋ก ๊ณ ์นจ์ด ๋๋ฉด์ ๋ฐ์ดํฐ๋ฅผ ์ต์ ์ผ๋ก ๊ฐฑ์ ํ๋ ๊ทธ๋ฐ ๊ธฐ๋ฅ์ ๊ฐ์ง ์ฑ์ ์์ฃผ ๋ง์ด ๋ณด์ จ๊ณ ์ต์ํ์ค๊ฑฐ๋ผ ์๊ฐํฉ๋๋ค. ๋ชจ๋์๊ฒ ์ฌ์ค์ ์น์ํ ๊ธฐ๋ฅ์ด๊ธดํ๋ฐ SwiftUI..
-
ํ๋ก๊ทธ๋๋จธ์ค - k์ง์์์ ์์ ๊ฐ์ ๊ตฌํ๊ธฐAlgorithm 2022. 12. 7. 15:22
์๋ ๋ฌธ์ ๋ ํ๋ก๊ทธ๋๋จธ์ค์์ ์ ๊ณตํ๋ k์ง์์์ ์์ ๊ฐ์ ๊ตฌํ๊ธฐ์ ๋ฌธ์ ์ ๋๋ค๐ง๐ป๐ป ๋ฌธ์ ์ ์ ๋๋ณด๊ธฐ ์์ ์ ์ n์ด ์ฃผ์ด์ง๋๋ค. ์ด ์ซ์๋ฅผ k์ง์๋ก ๋ฐ๊ฟจ์ ๋, ๋ณํ๋ ์ ์์ ์๋ ์กฐ๊ฑด์ ๋ง๋ ์์(Prime number)๊ฐ ๋ช ๊ฐ์ธ์ง ์์๋ณด๋ ค ํฉ๋๋ค. 0P0์ฒ๋ผ ์์ ์์ชฝ์ 0์ด ์๋ ๊ฒฝ์ฐ P0์ฒ๋ผ ์์ ์ค๋ฅธ์ชฝ์๋ง 0์ด ์๊ณ ์ผ์ชฝ์๋ ์๋ฌด๊ฒ๋ ์๋ ๊ฒฝ์ฐ 0P์ฒ๋ผ ์์ ์ผ์ชฝ์๋ง 0์ด ์๊ณ ์ค๋ฅธ์ชฝ์๋ ์๋ฌด๊ฒ๋ ์๋ ๊ฒฝ์ฐ P์ฒ๋ผ ์์ ์์ชฝ์ ์๋ฌด๊ฒ๋ ์๋ ๊ฒฝ์ฐ ๋จ, P๋ ๊ฐ ์๋ฆฟ์์ 0์ ํฌํจํ์ง ์๋ ์์์ ๋๋ค. ์๋ฅผ ๋ค์ด, 101์ P๊ฐ ๋ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, 437674์ 3์ง์๋ก ๋ฐ๊พธ๋ฉด 211020101011์ ๋๋ค. ์ฌ๊ธฐ์ ์ฐพ์ ์ ์๋ ์กฐ๊ฑด์ ๋ง๋ ์์๋ ์ผ์ชฝ๋ถํฐ ์์๋๋ก 211, 2,..
-
ํ๋ก๊ทธ๋๋จธ์ค - ๊ทค ๊ณ ๋ฅด๊ธฐAlgorithm 2022. 12. 6. 23:20
์๋ ๋ฌธ์ ๋ ํ๋ก๊ทธ๋๋จธ์ค์์ ์ ๊ณตํ๋ ๊ทค ๊ณ ๋ฅด๊ธฐ์ ๋ฌธ์ ์ ๋๋ค๐ง๐ป๐ป ๋ฌธ์ ์ ์ ๋๋ณด๊ธฐ ๊ฒฝํ๋ ๊ณผ์์์์ ๊ทค์ ์ํํ์ต๋๋ค. ๊ฒฝํ๋ ์ํํ ๊ทค ์ค 'k'๊ฐ๋ฅผ ๊ณจ๋ผ ์์ ํ๋์ ๋ด์ ํ๋งคํ๋ ค๊ณ ํฉ๋๋ค. ๊ทธ๋ฐ๋ฐ ์ํํ ๊ทค์ ํฌ๊ธฐ๊ฐ ์ผ์ ํ์ง ์์ ๋ณด๊ธฐ์ ์ข์ง ์๋ค๊ณ ์๊ฐํ ๊ฒฝํ๋ ๊ทค์ ํฌ๊ธฐ๋ณ๋ก ๋ถ๋ฅํ์ ๋ ์๋ก ๋ค๋ฅธ ์ข ๋ฅ์ ์๋ฅผ ์ต์ํํ๊ณ ์ถ์ต๋๋ค. ์๋ฅผ ๋ค์ด, ๊ฒฝํ๊ฐ ์ํํ ๊ทค 8๊ฐ์ ํฌ๊ธฐ๊ฐ [1, 3, 2, 5, 4, 5, 2, 3] ์ด๋ผ๊ณ ํฉ์๋ค. ๊ฒฝํ๊ฐ ๊ทค 6๊ฐ๋ฅผ ํ๋งคํ๊ณ ์ถ๋ค๋ฉด, ํฌ๊ธฐ๊ฐ 1, 4์ธ ๊ทค์ ์ ์ธํ ์ฌ์ฏ ๊ฐ์ ๊ทค์ ์์์ ๋ด์ผ๋ฉด, ๊ทค์ ํฌ๊ธฐ์ ์ข ๋ฅ๊ฐ 2, 3, 5๋ก ์ด 3๊ฐ์ง๊ฐ ๋๋ฉฐ ์ด๋๊ฐ ์๋ก ๋ค๋ฅธ ์ข ๋ฅ๊ฐ ์ต์์ผ ๋์ ๋๋ค. ๊ฒฝํ๊ฐ ํ ์์์ ๋ด์ผ๋ ค๋ ๊ทค์ ๊ฐ์ k์ ๊ทค์ ํฌ๊ธฐ๋ฅผ ๋ด์ ๋ฐฐ์ด ..
-
SwiftUI - antialiased & interpolationSwiftUI 2022. 12. 6. 14:47
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค๐ ์ด๋ฒ ํฌ์คํ ์์๋ SwiftUI์ ์ด๋ฏธ์ง๋ฅผ ์กฐ๊ธ ๋ ๋งค๋๋ฝ๊ฒ ๋ณด๊ฐํ๋ ๋ฉ์๋๋ค์ ๋ํด ํ์ตํ๊ฒ ์ต๋๋ค๐ ์ค๋ ์๊ฐํ ๋๊ฐ์ง๋ antialiased์ interpolation์ ๋๋ค. ๊ทธ๋ผ ์์ฐจ์ ์ผ๋ก ์์๋ณด๊ฒ ์ต๋๋ค! antialiased? ์ํฐ ์์ผ๋ฆฌ์ด์ฑ์ด ๋ญ๊น์? ์ฌ์ ์ ์ธ ์๋ฏธ๋ถํฐ ํ๋ฒ ํ์ ํด๋ณด์ฃ . ์ฐ์ ์์ผ๋ฆฌ์ด์ฑ์ ๋์งํธ ์ํ๋ง์์ ์ถ๋ ฅ์ด ์๊ณก๋๋ ํ์ ์ฆ, ๊ณ๋จ ํ์์ ์๋ฏธํฉ๋๋ค. ์ด๋ฏธ์ง ๊ฐ์ด ๋ ๋๋ง๋ ์ปจํ ์ธ ๋ฅผ ๋ณด์ฌ์ค๋ ์ถ๋ ฅ๋๋ ์ด๋ฏธ์ง์ ํฝ์ ์ด ๊นจ์ง๊ฑฐ๋ ๊ฐ์ฅ์๋ฆฌ๊ฐ ์ธํ๋ถํ ํด์ง๊ฒ ๋ํ๋๋ ํ์์ ๋๋ค. ์ฌ๊ธฐ์ ์ํฐ๊ฐ ๋ถ์์ผ๋ ์ด๋ฌํ ๋งค๋๋ฝ์ง ๋ชปํ ์ถ๋ ฅ์ ๋งค๋๋ฝ๊ฒ ๋ง๋ค์ด์ฃผ๋ ๋ฉ์๋๊ฒ ์ฃ ? ์ค์ ๊ณต์๋ฌธ์์์๋ ์๋์ ๊ฐ์ด ์๊ฐํ๊ณ ์์ต๋๋ค. "์ด๋ฏธ์ง๋ฅผ ๋ ๋๋งํ ๋ SwiftUI๊ฐ ์ํฐ ..
-
ํ๋ก๊ทธ๋๋จธ์ค - ์ ์ฐ๊ธฐAlgorithm 2022. 12. 3. 09:23
์๋ ๋ฌธ์ ๋ ํ๋ก๊ทธ๋๋จธ์ค์์ ์ ๊ณตํ๋ ์ ์ฐ๊ธฐ์ ๋ฌธ์ ์ ๋๋ค๐ง๐ป๐ป ๋ฌธ์ ์ ์ ๋๋ณด๊ธฐ ์ขํํ๋ฉด์ ์ข์ํ๋ ์ง์๋ x์ถ๊ณผ y์ถ์ด ์ง๊ตํ๋ 2์ฐจ์ ์ขํํ๋ฉด์ ์ ์ ์ฐ์ผ๋ฉด์ ๋๊ณ ์์ต๋๋ค. ์ง์๋ ๋ ์์ ์ ์ k, d๊ฐ ์ฃผ์ด์ง ๋ ๋ค์๊ณผ ๊ฐ์ด ์ ์ ์ฐ์ผ๋ ค ํฉ๋๋ค. ์์ (0, 0)์ผ๋ก๋ถํฐ x์ถ ๋ฐฉํฅ์ผ๋ก a*k(a = 0, 1, 2, 3 ...), y์ถ ๋ฐฉํฅ์ผ๋ก b*k(b = 0, 1, 2, 3 ...)๋งํผ ๋จ์ด์ง ์์น์ ์ ์ ์ฐ์ต๋๋ค. ์์ ๊ณผ ๊ฑฐ๋ฆฌ๊ฐ d๋ฅผ ๋๋ ์์น์๋ ์ ์ ์ฐ์ง ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, k๊ฐ 2, d๊ฐ 4์ธ ๊ฒฝ์ฐ์๋ (0, 0), (0, 2), (0, 4), (2, 0), (2, 2), (4, 0) ์์น์ ์ ์ ์ฐ์ด ์ด 6๊ฐ์ ์ ์ ์ฐ์ต๋๋ค. ์ ์ k์ ์์ ๊ณผ์ ๊ฑฐ๋ฆฌ๋ฅผ ๋ํ๋ด๋ ์ ์ d๊ฐ ์ฃผ์ด์ก..
-
SwiftUI - renderingModeSwiftUI 2022. 12. 2. 10:14
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค๐ ์ด๋ฒ ํฌ์คํ ์์๋ SwiftUI์์ Image๋ฅผ ์ฌ์ฉํจ์ ์์ด renderingMode๋ผ๋๊ฒ์ ๋ํด ํ์ตํด๋ณด๊ฒ ์ต๋๋ค๐ ์ค๋ ๋๋์ฒด ๋ญํ ๊ฑฐ?! ํ๋ก์ ํธ๋ฅผ ๋ง๋ค๋ค๋ณด๋ฉด ๋น์ฐํ ์ด๋ฏธ์ง ์์ ์ด ํ์ํ ๊ฒฝ์ฐ๊ฐ ์์ต๋๋ค. ๋๋ถ๋ถ ์์ด์ฝ ๊ฐ์ ๊ฒ๋ค์ SVG ํ์ผ ํ์์ผ๋ก ์์ ์ ๋ด์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์๋ฐ์. ์ด๋ ์ด๋ฏธ์ง๋ฅผ ์์ ์ ๋ด๋๋ค๋ฉด ์ฐ์ธก Image Set์ Render As ํญ๋ชฉ์ ๋ณผ ์ ์์ต๋๋ค. ๊ทธ๋ผ ์๋์ ๊ฐ์ด 3๊ฐ์ง์ ์ ํ ์ต์ ์ด ์์ต๋๋ค. ์ ์ค๋ ๋ค๋ค๋ณผ๊ฒ์ด ์ด๊ฑฐ์์! ๋ ๋๋ง ๋ชจ๋๊ฐ ์ด๋ค๊ฒ์ด ์๊ณ ์ด๋ค ์๋ฏธ๋ฅผ ๊ฐ๋์ง์ ๋งค๋ฒ ์์ ๊ด๋ฆฌ์์์ ์์ ํด์ฃผ์ง ์์๋ ๊ฐ ์ฝ๋์์ ๋ณ๊ฒฝํ ์ ์๋๋ก renderingMode ๋ฉ์๋๋ฅผ ํ์ฉํ๋ ๋ฐฉ๋ฒ๊ณผ ์ค์ ๊ตฌ๋ ์ ์ด๋ค ์ฐจ์ด๊ฐ ์๋์ง ์์๋ณด๊ฒ ..
-
์ ์ญ์ ์ธ Window ๊ฐ์ฒด๋ฅผ ์ด์ฉํด LoadingView ๋์ฐ๊ธฐSwiftUI 2022. 11. 29. 16:40
์๋ ํ์ธ์. ๊ทธ๋ฆฐ์ ๋๋ค๐ ์ด๋ฒ ํฌ์คํ ์์๋ ์ ์ญ์ ์ผ๋ก ์์ ๋ทฐ๋ฅผ ๊ฐ์ธ๋ฒ๋ ค ๋ก๋ฉ๋ทฐ๋ฅผ ์๋์ฐ๋ก ๋ง๋ค์ด ๋์ฐ๋ ๋ฐฉ๋ฒ์ ํฌ์คํ ํด๋ณด๊ฒ ์ต๋๋ค! ์ ์ด๋ฐ ๊ตฌํ์ด ํ์ํ๊ฒ ๋์๋์? ์ฐ์ ๊ฐ ํผ์ณ์์ ๋ทฐ๋ฅผ ๊ตฌ์ฑํจ์ ์์ด ๋ฐํ ์์ญ์ด ์กด์ฌํ ๋๋ ์๊ณ ์์๋๋ ์์ต๋๋ค. ์ฆ, ๊ฐ ๋ค๋ฅธ ๊ตฌ์ฑ์ ๋ทฐ์์ ํด๋น ๋ก๋ฉ๋ทฐ๋ฅผ ์ข ์์ผ๋ก ๋์์ค๋ค๋ฉด ๋ณด์ฌ์ง๋ ๋ทฐ์ ํจ๋ฉ์ด ๋ฌ๋ผ์ง๊ธฐ์ ๋ณด์ฌ์ง๋ ์์น๊ฐ ๋ฌ๋ผ์ง ์ ์์ต๋๋ค. ์ด๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ๊ธฐ์กด ๋ทฐ์ ์กฐํฉ๋ค์ด ์ด๋ค์ง ์๋์ฐ ์์ ์๋ก์ด ์๋์ฐ๋ฅผ ๋ง๋ค์ด ๋ฎ์ด๋ฒ๋ฆฌ๋ ๋ฐฉ์๋ ๋ฐฉ๋ฒ์ผ๊ฒ ๊ฐ์ ๊ตฌํํด๋ดค์ด์! ์ด ๊ตฌํ์ ์ํด์๋ ์ฐ์ ๋์์ค ๋ก๋ฉ ๋ทฐ ์์ฒด๋ฅผ ๋ง๋ค์ด์ผ ํฉ๋๋ค. ๊ทธ ๋ค์์ผ๋ก๋ ๋ก๋ฉ๋ทฐ๋ฅผ ๋ด์ ์๋กญ๊ฒ ๊ณต์ ํ ์๋์ฐ ๊ฐ์ฒด๋ฅผ ๋ง๋ค๊ณ ์ด๊ธฐํ ์ UIHostingController๋ฅผ ์ด์ฉํด ํด๋น ๋ก๋ฉ..