๐Ÿ‘ฉ๐Ÿป‍๐Ÿ’ป iOSun
article thumbnail
[swift] ๋ฉ”์†Œ๋“œ
Swift 2023. 12. 29. 22:27

ํ•จ์ˆ˜ vs ๋ฉ”์†Œ๋“œ ๋ญ” ์ฐจ์ด? func ํ‚ค์›Œ๋“œ ๋ถ™์€ ๊ฑด ๋‹ค ํ•จ์ˆ˜์ž…๋‹ˆ๋‹ค. ๋ฉ”์†Œ๋“œ๋Š” ํด๋ž˜์Šค, ๊ตฌ์กฐ์ฒด, ์—ด๊ฑฐํ˜•์— ์†ํ•œ ํ•จ์ˆ˜๋ฅผ ๋œปํ•ฉ๋‹ˆ๋‹ค. (์ฆ‰, ํ•จ์ˆ˜๊ฐ€ ๋” ํฐ ๊ฐœ๋…) swift์—์„œ ๋ฉ”์†Œ๋“œ๋Š” ํฌ๊ฒŒ ๋‘๊ฐ€์ง€๋กœ ๋‚˜๋‰ฉ๋‹ˆ๋‹ค. ์ธ์Šคํ„ด์Šค ๋ฉ”์†Œ๋“œ ํƒ€์ž… ๋ฉ”์†Œ๋“œ ๋‘˜์˜ ํฐ ์ฐจ์ด์ ์€ ์ธ์Šคํ„ด์Šค๋ฅผ ์ƒ์„ฑํ•ด์•ผ ํ•˜๋ƒ ์•ˆํ•˜๋ƒ์ž…๋‹ˆ๋‹ค. ์ธ์Šคํ„ด์Šค ๋ฉ”์†Œ๋“œ class Counter { var count = 0 func increment() { count += 1 } } let counter = Counter() // ์ธ์Šคํ„ด์Šค๋ฅผ ์ƒ์„ฑํ•˜๊ณ  counter.increment() // ๋ฉ”์†Œ๋“œ๋ฅผ ์‹คํ–‰ํ•œ๋‹ค. ์ธ์Šคํ„ด์Šค๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ํ•ด๋‹น ์ธ์Šคํ„ด์Šค์—์„œ ๋ฉ”์†Œ๋“œ๋ฅผ ํ˜ธ์ถœํ•ฉ๋‹ˆ๋‹ค. ํƒ€์ž… ๋ฉ”์†Œ๋“œ class People { class func sayBye() { // 1. ํด๋ž˜์Šค ๋ฉ”์†Œ๋“œ..

article thumbnail
[swift] ๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ (Object Oriented Programming)
Swift 2023. 12. 29. 22:26

๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ (Object Oriented Programming) ๊ฐ์ฒด์ง€ํ–ฅํ”„๋กœ๊ทธ๋ž˜๋ฐ์ด๋ž€? ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”์ƒํ™” ์‹œํ‚ค๊ณ  ํ–‰์œ„๋ฅผ ๊ฐ€์ง„ ๊ฐ์ฒด๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ex) ๋ถ•์–ด๋นต์„ ๋งŒ๋“ค ๋•Œ, ํ‹€์ด ์—†๋‹ค๋ฉด? → ๋ถ•์–ด๋นต ํ•˜๋‚˜ํ•˜๋‚˜ ๋ชจ์–‘์„ ๋‚ด์•ผํ•ฉ๋‹ˆ๋‹ค. ๋‹ค๋ฅด๊ฒŒ ๋ชจ์–‘์ด ๋‚˜์™€์„œ ์‹ค์ˆ˜๋ฅผ ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ํ‹€์„ ์ด์šฉํ•ด ๋งŒ๋“ ๋‹ค๋ฉด? → ๋ถ•์–ด๋นต์„ ๋น ๋ฅด๊ฒŒ ๋งŒ๋“ค ์ˆ˜ ์žˆ๊ณ  ๋ถ•์–ด๋นต ๋ชจ์–‘์„ ๋ฐ”๊พธ๊ณ  ์‹ถ์„ ๋•Œ ํ‹€๋งŒ ๋ฐ”๊พธ๋ฉด ๋˜๊ธฐ ๋•Œ๋ฌธ์— ์‰ฝ๊ณ  ๋น ๋ฅด๊ฒŒ ์‹ค์ˆ˜์—†์ด ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ถ•์–ด๋นต ํ‹€ == ํด๋ž˜์Šค ๋ถ•์–ด๋นต ํ‹€๋กœ ๋งŒ๋“  ๋ถ•์–ด๋นต == ํด๋ž˜์Šค์˜ ์ธ์Šคํ„ด์Šค ์žฅ์  ๊ฐœ๋ฐœ์˜ ์ƒ์‚ฐ์„ฑ ํ–ฅ์ƒ → ํ‹€์„ ๋งŒ๋“ค์–ด ๋†“์œผ๋ฉด ์ฐ๊ธฐ๋งŒ ํ•˜๋ฉด ๋˜๊ธฐ ๋•Œ๋ฌธ ์œ ์ง€๋ณด์ˆ˜ ์šฉ์ด → ์ˆ˜์ •ํ•  ๋•Œ์—๋„ ํด๋ž˜์Šค์˜ ๋‚ด๋ถ€ ์ฝ”๋“œ๋งŒ ์ˆ˜์ •ํ•˜๋ฉด ๋˜๊ธฐ ๋•Œ๋ฌธ ๋‹จ์  ํ‹€์„ ๋งŒ๋“ค์–ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— → ์ฝ”๋”ฉ ๋‚œ์ด๋„..

article thumbnail
[๋ฐฑ์ค€ 20057] ๋งˆ๋ฒ•์‚ฌ ์ƒ์–ด์™€ ํ† ๋„ค์ด๋„ - swift

20057๋ฒˆ: ๋งˆ๋ฒ•์‚ฌ ์ƒ์–ด์™€ ํ† ๋„ค์ด๋„ ๋งˆ๋ฒ•์‚ฌ ์ƒ์–ด๊ฐ€ ํ† ๋„ค์ด๋„๋ฅผ ๋ฐฐ์› ๊ณ , ์˜ค๋Š˜์€ ํ† ๋„ค์ด๋„๋ฅผ ํฌ๊ธฐ๊ฐ€ N×N์ธ ๊ฒฉ์ž๋กœ ๋‚˜๋ˆ„์–ด์ง„ ๋ชจ๋ž˜๋ฐญ์—์„œ ์—ฐ์Šตํ•˜๋ ค๊ณ  ํ•œ๋‹ค. ์œ„์น˜ (r, c)๋Š” ๊ฒฉ์ž์˜ rํ–‰ c์—ด์„ ์˜๋ฏธํ•˜๊ณ , A[r][c]๋Š” (r, c)์— ์žˆ๋Š” ๋ชจ๋ž˜์˜ ์–‘์„ www.acmicpc.net ๊ณจ๋“œ3 ๋ฌธ์ œ ์„ค๋ช… ๋ฌธ์ œ ํ’€์ด ์ผ๋‹จ ํ† ๋„ค์ด๋„ ์ด๋™๋ถ€ํ„ฐ ๋ณด๋ฉด ์ผ์ • ๊ทœ์น™์ด ์žˆ๋‹ค. n=5์ผ๋•Œ ์™ผ์ชฝ1๋ฒˆ, ์•„๋ž˜1๋ฒˆ, ์˜ค๋ฅธ์ชฝ2๋ฒˆ, ์œ„์ชฝ2๋ฒˆ, ์™ผ์ชฝ3๋ฒˆ, ์•„๋ž˜3๋ฒˆ, ์˜ค๋ฅธ์ชฝ4๋ฒˆ, ์œ„์ชฝ4๋ฒˆ, ์™ผ์ชฝ5๋ฒˆ ์ด๋™ ์ด๋ ‡๊ฒŒ (์™ผ, ์•„๋ž˜) (์˜ค๋ฅธ, ์œ„) ๊ฐ€ ์„ธํŠธ๋กœ ์›€์ง์ด๋ฉฐ ์›€์ง์ž„ ํšŸ์ˆ˜๊ฐ€ 1์”ฉ ๋Š˜๊ณ  ์žˆ๋‹ค. var moveCount = 1 // ํ† ๋„ค์ด๋„ ์ด๋™ ๊ทœ์น™ -> ์™ผ1 ์•„1 ์˜ค2 ์œ„2 ์™ผ3 ์•„3 ์˜ค4 ์œ„4 .. while true { // n์ด๋ž‘ ๊ฐ™์œผ๋ฉด l..

article thumbnail
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค 92342] ์–‘๊ถ ๋Œ€ํšŒ swift

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”. programmers.co.kr ๋ฌธ์ œ ์„ค๋ช… ๋ฌธ์ œ ํ’€์ด ์ฒจ์— ๋ฌด์‹ํ•˜๊ฒŒ DFS๋กœ ํ™”์‚ด์˜ ํ•ฉ์ด n์ด ๋˜๋Š” ๋ชจ๋“  ๊ฒฝ์šฐ๋ฅผ ๊ตฌํ–ˆ๋‹ค. ex) n์ด 3์ด๋ฉด [3,0,0,0,0,0,0,0,0,0,0] [2,1,0,0,0,0,0,0,0,0,0] [0,3,0,0,0,0,0,0,0,0,0] [0,2,1,0,0,0,0,0,0,0,0] ... n์ด 9๋ฅผ ๋„˜์–ด๊ฐ€๋‹ˆ๊นŒ ์‹œ๊ฐ„์ดˆ๊ณผ.. ๊ฒฐ๊ตญ ์ •๋‹ต์„ ์‚ด์ง ๋ณด๊ณ  ๋‹ค์‹œ ๊ตฌํ˜„ํ•ด ๋ณด์•˜๋‹ค. ํ•ต์‹ฌ์€ ์–ดํ”ผ์น˜๋ฅผ ์ด๊ธฐ๋Š” ๊ฒฝ์šฐ / ์ง€๋Š” ๊ฒฝ์šฐ๋กœ ๋‚˜๋ˆ„๋Š” ๊ฒƒ ์–ดํ”ผ์น˜์˜ ํ™”์‚ด์ด [2,3,1,0,0,0,0,1,3,0,0] ์ผ ๋•Œ ์–ดํ”ผ์น˜๋ฅผ ์ด๊ธฐ๋Š” ๊ฒฝ์šฐ 0๋ฒˆ..

profile on loading

Loading...