์ ์ฒด ๊ธ (50) ์ธ๋ค์ผํ ๋ฆฌ์คํธํ [ํ๋ก๊ทธ๋๋จธ์ค Lv.1] ์ต์์ง์ฌ๊ฐํ ํ์ด ๋ ์ง : 2025.04.25๋ฌธ์ ์ ํ : ์์ ํ์๋ฌธ์ ์ ๋ชฉ : ์ต์์ง์ฌ๊ฐํ๋ฌธ์ ๋งํฌ : https://school.programmers.co.kr/learn/courses/30/lessons/86491Intuition๋ช ํจ์ ๊ฐ๋ก,์ธ๋ก ํฌ๊ธฐ๊ฐ ๋ด๊ธด ๋ฐฐ์ด์ด ์ฃผ์ด์ง ๋, ๋ชจ๋ ๋ช ํจ์ ๋ด์ ์ ์๋ ์ง๊ฐ์ ํฌ๊ธฐ๋ฅผ ๊ตฌํด์ผ ํ๋ค.๊ฐ ๋ช ํจ์ ํ์ ์ด ๊ฐ๋ฅํ๋ค. (๊ฐ๋ก, ์ธ๋ก๋ฅผ ๋ฐ๊ฟ ์ ์๋ค.)๊ฐ ๋ช ํจ๋ง๋ค ๊ธด ์ชฝ์ ๊ฐ๋ก์, ์งง์ ์ชฝ์ ์ธ๋ก์ ๋๋ค๊ณ ์๊ฐํด๋ณด๋ฉด, ๊ธด ์ชฝ ์ค์ ์ต๋๊ฐ๊ณผ ์งง์ ์ชฝ ์ค์ ์ต๋๊ฐ์ ๊ตฌํ๋ฉด ๋ชจ๋ ๋ช ํจ์ ๋ค ๋ฃ์ ์ ์๋ค.๋ฌธ์ ์ ํ์ ์์ ํ์(Brute force)๋ผ๊ณ ๋์ด ์์ง๋ง, ๋ช ํจ์ ํ์ ํ ๋ชจ๋ ์กฐํฉ์ ์๋ํ์ง ์๊ณ ๊ทธ๋ฆฌ๋ ์๊ณ ๋ฆฌ์ฆ์ผ๋ก ํธ๋ ๊ฒ ๋ ํจ์จ์ ์ผ ๊ฒ ๊ฐ๋ค.Approach๋ช ํจ ํฌ.. [ํ๋ก๊ทธ๋๋จธ์ค Lv.1] ์์ฐ ํ์ด ๋ ์ง : 2025.04.25๋ฌธ์ ์ ํ : ์ฐ์ต ๋ฌธ์ ๋ฌธ์ ์ ๋ชฉ : ์์ฐ๋ฌธ์ ๋งํฌ : https://school.programmers.co.kr/learn/courses/30/lessons/12982Intuition์ ํด์ง ์์ฐ์์ ๋ถ์์์ ์ ์ฒญํ ๊ธ์ก์ ์ง์ํด์ค ๋, ์ต๋ ๋ช ๊ฐ ๋ถ์์ ์ง์ํด์ค ์ ์๋์ง ๊ตฌํด์ผ ํ๋ค.์ ์ฒญํ ๊ธ์ก์ด ์์ ๋ถ์๋ค๋ถํฐ ์ง์ํด์ผ ์ต๋ํ ๋ง์ ๋ถ์์ ์ง์ํ ์ ์๋ค.ํ์ฌ ์ํฉ์์ ๊ฐ์ฅ ์ต์ ์ธ ์ ํ์ ๋ฐ๋ณตํด์ ์ ์ฒด ์ต์ ํด๋ฅผ ๊ตฌํ๋ ๊ทธ๋ฆฌ๋ ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ๋ก๋ ๋ณผ ์ ์๊ฒ ๋ค.Approach๋ถ์์ ์ ์ฒญ ๊ธ์ก์ด ๋ด๊ธด ๋ฐฐ์ด d๋ฅผ ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌํ๋ค.์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌ๋ d๋ฅผ ์ํํ๋ฉฐ, ๋ถ์์ ์ ์ฒญ ๊ธ์ก(amount)์ด ๋จ์ ์์ฐ(budget) ๋ณด๋ค ์์ผ๋ฉด ์ง์ํ ๋ถ์ ์(count)๋ฅผ 1.. [Go] Go ํ๊ฒฝ์ค์ 1. Go ๋ฐํ์ ์ค์นGo ํํ์ด์ง์์ ๋ฐํ์์ ์ค์นํ๋ค.๋๋ M1 ๋งฅ์ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ARM64๋ก ์ค์นํ๋ค.๋ฒ์ ๋ช ๋ น์ด๋ก ์ฌ๋ฐ๋ฅด๊ฒ ์ค์น๋๋์ง ํ์ธํ๋ค.go --version2. ํ๋ก์ ํธ ์คํํ๋ก์ ํธ ์ด๊ธฐํ ๋ช ๋ น์ด๋ฅผ ์ํํ๋ค.์คํ ํ go.mod ํ์ผ์ด ์๊ธฐ๋๋ฐ, ์ด๋ NodeJS์์ package.json, Python์ requirements.txt์ ๊ฐ์ ๊ฒ์ด๋ค.go mod init github.com/๊ณ์ ๋ช /์ ์ฅ์๋ช main.go ํ์ผ์ ์์ฑํ๊ณ ๊ทธ ์์ ๊ฐ๋จํ ์ฝ๋๋ฅผ ์์ฑํ๋ค.package main import "fmt" func main() { fmt.Println("Welcom to Nomad Coin!"); }๋ค์ ๋ช ๋ น์ด๋ก ์คํํด๋ณธ๋ค.go run main.go3. ์๋ํฐ ์ค์ ๋๋ VSC.. [Go] Slice, Pointer, Struct ์ ๋ฆฌ Array vs SliceArrayPython, JS์ ๋ฌ๋ฆฌ Golang์ array๋ ์ ํด์ง ๊ธธ์ด๊ฐ ์๋ค.// Arrayfoods := [3]string{"kimchi", "pizza", "pasta"}for _, food :=range foods { fmt.Println(food)}// ๋๋for i := 0; i kimchi> pizza> pastaSliceslice๋ ๊ฐ๋ณ ๊ธธ์ด์ ๋ฐฐ์ด์ด๋ค. ๋๊ดํธ ์์ ์ซ์๋ฅผ ์ง์ฐ๋ฉด slice๊ฐ ๋๋ค.slice์ ์์๋ฅผ ์ถ๊ฐํ ๋๋ append ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๊ณ ๋ณต์ฌ๋ณธ์ผ๋ก ์๋ณธ slice๋ฅผ ์ ๋ฐ์ดํธ ํด์ค์ผ ํ๋ค.// Slicefoods := []string{"kimchi", "pizza", "pasta"}fmt.Printf("%v\n", foods)> ki.. [ํ๋ก๊ทธ๋๋จธ์ค Lv.1] ๊ณต์ ์ฐ์ฑ ํ์ด ๋ ์ง : 2025.04.24๋ฌธ์ ์ ํ : ์ฐ์ต๋ฌธ์ ๋ฌธ์ ์ ๋ชฉ : ๊ณต์ ์ฐ์ฑ ๋ฌธ์ ๋งํฌ : https://school.programmers.co.kr/learn/courses/30/lessons/172928Intuition์ด ํจ์๋ ๊ณต์ park๊ณผ ์ด๋ ๋ช ๋ น routes๋ฅผ ๋ฐ์์, ์์์ ์์ ๋ช ๋ น์ ๋ฐ๋ผ ์ด๋ํ ํ์ ์ขํ๋ฅผ ๋ฐํํ๋ค.๊ณต์์ ๋ฒ์ด๋๊ฑฐ๋ ์ฅ์ ๋ฌผ์ด ์์ผ๋ฉด ๋ช ๋ น์ ๋ฌด์ํ๊ณ ๋ค์ ๋ช ๋ น์ผ๋ก ๋์ด๊ฐ๋ค.๋ณต์กํ ์กฐ๊ฑด์ ์ฝ๋๋ก ์ฎ๊ธฐ๋ ๊ตฌํ ๋ฌธ์ ๋ผ๊ณ ๋ณผ ์ ์๊ฒ ๋ค.Approach๊ณต์์ ๊ฐ๋ก(w), ์ธ๋ก(h) ๊ธธ์ด์ ํ์ฌ ์์น๋ฅผ ์ ์ฅํ ๋ณ์(curr)๋ฅผ ์ ์ธํ๋ค.park์ ๋ฌธ์์ด์ ๋ชจ๋ ์ํํ์ฌ ์์ ์์น๋ฅผ ์ฐพ์์ curr์ ์ ์ฅํ๋ค.์ด๋ ๋ฐฉํฅ์ ์ ์ธํ๋ค.๊ฐ ๋ฐฉํฅ ๋ฌธ์์ ๋ํด ํ๊ณผ ์ด์ ๋ณํ๋์ ์ ์ฅํ๋ค.๋ช ๋ น.. [ํ๋ก๊ทธ๋๋จธ์ค Lv.2] ๋ฌ๋ฆฌ๊ธฐ ๊ฒฝ์ฃผ ํ์ด ๋ ์ง : 2025.04.22๋ฌธ์ ์ ํ : ์ฐ์ต๋ฌธ์ ๋ฌธ์ ์ ๋ชฉ : ๋ฌ๋ฆฌ๊ธฐ ๊ฒฝ์ฃผ๋ฌธ์ ๋งํฌ : https://school.programmers.co.kr/learn/courses/30/lessons/178871Intuitionplayers ๋ฐฐ์ด์์ callings์ ์์๋๋ก ๋ฐ๋ก ์์ ์ ์๋ฅผ ์ถ์ํ๊ณ , ๊ฒฝ์ฃผ๊ฐ ๋๋ ํ ์ ์๋ค์ ์์๋๋ก ์ด๋ฆ์ ๋ฐํํด์ผ ํ๋ค.players ๊ธธ์ด๊ฐ ์ต๋ 50,000์ด๋ฏ๋ก, players ๋ฐฐ์ด ์์์ callings์์ ํธ์ถํ ์ ์๋ฅผ ์ต๋ํ ๋น ๋ฅด๊ฒ ์ฐพ๋ ๊ฒ์ด ๊ด๊ฑด์ด๊ฒ ๋ค.players ๋ฐฐ์ด ์์์ ์ธ๋ฑ์ค๋ฅผ ์ฐพ์์ ์๋ก ๋ฐ๊ฟ์ฃผ๋ ๊ฒ์ ์๊ฐ ์ด๊ณผ๋๋ ์ผ์ด์ค๊ฐ ์์๋ค.๋ค๋ฅธ ๋ฐฉ๋ฒ์ผ๋ก ํด์ํ ์ด๋ธ ์๋ฃ๊ตฌ์กฐ๊ฐ ๋ ์ฌ๋๊ณ , JS์์๋ V8 ์์ง ๊ธฐ์ค ๋ฐ์ดํฐ ์ ๊ทผ์ ๋ํ ์๊ฐ๋ณต์ก๋๊ฐ O(1)์ธ M.. ํฌ ํฌ์ธํฐ ์๊ณ ๋ฆฌ์ฆ ์ ์ํฌ ํฌ์ธํฐ(Two Pointer) ์๊ณ ๋ฆฌ์ฆ์ด๋, ๋ฐฐ์ด์ด๋ ์ปฌ๋ ์ ์์ ๋ ๊ฐ์ ํฌ์ธํฐ๋ฅผ ์ด์ฉํ์ฌ ๋ฒ์๋ฅผ ์กฐ์ ํด๊ฐ๋ฉฐ ํน์ ํ ์กฐ๊ฑด์ ๋ง์กฑํ๋ ๋ถ๋ถ์ ์ฐพ๋ ๊ธฐ๋ฒ์ด๋ค.ํนํ ์ ๋ ฌ๋ ๋ฐฐ์ด์ด๋ ์ปฌ๋ ์ ๊ณผ ๊ด๋ จ๋ ๋ฌธ์ ์์ ํจ๊ณผ์ ์ผ๋ก ์ฌ์ฉ๋๋ค.ํต์ฌ ์์ด๋์ด๋ ๋ฐฐ์ด์ ์๋ก ๋ค๋ฅธ ๋ ๋ถ๋ถ์ ๋์์ ๋ฐ๋ณตํ๋ ๊ฒ์ด๋ค.์ผ๋ฐ์ ์ผ๋ก ์๊ฐ ๋ณต์ก๋๋ O(n), ๊ณต๊ฐ ๋ณต์ก๋๋ O(1)์ด ๋๋ค.๋ฐํ์์ ์ต์ ํํ๊ณ ๊ณต๊ฐ์ ์ ์ฝํ๊ณ ์ถ์ ๋ ์ฌ์ฉํ๋ค.๊ณ ๋ คํด์ผ ํ ์ ํฌ์ธํฐ์ ์ด๊ธฐ ์์น ์ค์ ํฌ์ธํฐ๋ฅผ ์ด๋์ ์์ํ๊ณ ์ด๋ค ์ธ๋ฑ์ค๋ฅผ ๋น๊ตํ ๊ฒ์ธ๊ฐ?ํฌ์ธํฐ์ ์ด๋ ๋ฐฉํฅ๊ณผ ์กฐ๊ฑด๊ฐ์ ๋ฐฉํฅ์ผ๋ก ์ด๋ํ ๊ฒ์ธ๊ฐ, ๋ค๋ฅธ ๋ฐฉํฅ์ผ๋ก ์ด๋ํ ๊ฒ์ธ๊ฐ?ํฌ์ธํฐ๋ฅผ ์ธ์ ์์ง์ผ ๊ฒ์ธ๊ฐ?ํฌ์ธํฐ์ ์ค์ง ์กฐ๊ฑดํฌ์ธํฐ๋ฅผ ์ธ์ ๋ฉ์ถ ๊ฒ์ธ๊ฐ?์ผ๋ฐ์ ์ผ๋ก ๋ฐฐ์ด์ ๋ฐ๋ณต์ด ๋๋ ๋๋ ๋ ํฌ์ธํฐ๊ฐ .. [ํ๋ก๊ทธ๋๋จธ์ค Lv.2] ์ซ์์ ํํ ํ์ด ๋ ์ง : 2025.04.21๋ฌธ์ ์ ํ : ์ฐ์ต๋ฌธ์ ๋ฌธ์ ์ ๋ชฉ : ์ซ์์ ํํ๋ฌธ์ ๋งํฌ : https://school.programmers.co.kr/learn/courses/30/lessons/12924 Intuition์์ฐ์ n์ ์ฐ์๋ ์์ฐ์์ ํฉ์ผ๋ก ๋ํ๋ผ ์ ์๋ ๋ฐฉ๋ฒ์ ์๋ฅผ ๊ตฌํ๋ ๋ฌธ์ ์ด๋ค.์๋ฅผ ๋ค์ด n์ด 15๋ผ๋ฉด, 1+2+3+4+5, 4+5+6, 7+8, 15 ์ ๋ค ๊ฐ์ง ๋ฐฉ๋ฒ์ด ์๋ค.n/2๋ณด๋ค ํฐ ์์ฐ์๋ถํฐ ์์ํ๋ ์์ฐ์์ ํฉ์ ์๋ค. ๋ฐ๋ผ์ ์์ฐ์์ ํฉ์ n/2 ๋ณด๋ค ์์ ์๋ถํฐ ์์ํ๋ ์ ์ ๊ณ ๋ คํ๋ค.n ์์ฒด๋ก๋ง ํํ๋๋ ์ฃ์ง์ผ์ด์ค ํ ๊ฐ์ง๊ฐ ์๋ค. Approach์ฐ์๋ ์์ฐ์์ ํฉ์ผ๋ก ๋ํ๋ผ ์ ์๋ ๋ฐฉ๋ฒ์ ์๋ฅผ ์ ์ฅํ๋ ๋ณ์ answer๋ฅผ ์ ์ธํ๋ค.์๊ธฐ ์์ ์ ๋ฌด์กฐ๊ฑด ํฌํจ๋๋ฏ๋ก .. ์ด์ 1 2 3 4 ยทยทยท 7 ๋ค์