๋ถ๋ฅ ์ ์ฒด๋ณด๊ธฐ
42
15. 3Sum
2023.08.21
1. my code trash ๊ฐ์ด ํ์์. ๊ฐ๋จํ๊ฒ ํ๋ ค๊ณ ๋
ธ๋ ฅํ๊ฒ ๋ ๋ณต์กํ๊ฒ ํ๊ฒ ๋ ๊ฒฐ๊ณผ.. ๊ณต๊ฐ๋ณต์ก๋ + ์๊ฐ๋ณต์ก๋ ๋งค์ฐ ์ข์ง ์์. ์ผ๋จ ๋ด ์๊ฐ์ผ๋ก๋ ๊ฐ ์์ ์ ๋๊ฐ์ผ๋ก Map์ ๋ง๋ค์ด์ฃผ๊ณ ๊ฐ ๊ฐ์ ๋ถํธ์ ๋ฐ๋ผ ์์๋ฉด Pair์ first++, ์์๋ฉด second++์ ํด์ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ ๋งต์ ํค ๊ฐ์ผ๋ก ์ ๋ ฌ์ ํด์ค. answer์ ์ถ๊ฐํด์ฃผ๋ ์กฐ๊ฑด์ (a, b, c) ๋ชจ๋ ๋ค ๋ค๋ฅธ ๊ฐ์ด๋ฉด ๊ฐ์ ๋ถํธ์ธ ๊ฐ์ ๋ํด์๋ b < c๋ฅผ ํด์ค. 1. ํค ์ค 0์ด ์๋ค๋ฉด ๋งต ์ค์์ value์ first, second ๋ ๋ค 0์ด ์๋ ๊ฐ์ ํํด์ answer์ ์ถ๊ฐ 2. ๋งต์์ ์์์ธ ๊ฐ์ด ์กด์ฌํ๋ ๋งต๋ค์ ๋ํด์๋ง ์+์+์ ์กฐํฉ ์ฐพ์. ๋จผ์ ์์์ ๋๊ฐ / 2๊ฐ ๋จ์ด์ง๋ฉด ์์์ ๋๊ฐ / 2ํ ๊ฐ์ ๊ฐ์๊ฐ ..

๊ฟ์ ๊พธ๋ฏ ์ถค์ ์ถ๋ฏ
2023.08.08
๊ฟ์ ๊พธ๋ฏ ์ถค์ ์ถ๋ฏ ๊น์ฌ์ SF 23.07.21 ~ 23.08.02

[Android] Hilt
2023.05.09
Dependency ํ๋์ ํด๋์ค๊ฐ ๋ค๋ฅธ ํ๋์ ํด๋์ค์ ์์กดํ๋ ๊ฒ์ ์๋ฏธํจ. A ํด๋์ค๊ฐ ๊ฐ์ฒด๋ฅผ ๋ง๋ค๊ธฐ ์ํด B ํด๋์ค๋ฅผ ํ์๋ก ํ ๋ B๋ A์ ์์กด ๋์์ด ๋จ. ์๋ฅผ ๋ค์ด ์๋ฌ๋๋ฅผ ๋ง๋ค๊ธฐ ์ํด ๋๋ ์ฑ์ด ํ์ํจ. ์๋ฌ๋๋ ๋๋ ์ฑ์ ์์กดํ๊ณ ์์. ๋ฐ๋ผ์ ์๋ฌ๋ ← ๋๋ ์ฑ ๊ด๊ณ๊ฐ ๋จ. ์ฌ๊ธฐ์ ๋๋ ์ฑ์ด ์์กด์ ๋์, Dependency๊ฐ ๋จ. Injection ์์ ์๋ฅผ ๊ณ์ ์ฌ์ฉํด์ ์๊ฐํด๋ณด๋ฉด ์๋ฌ๋ ํด๋์ค, ๋๋ ์ฑ ํด๋์ค๊ฐ ์์ ๋ ์๋ฌ๋ ๊ฐ์ฒด๋ฅผ ๋ง๋ค๊ธฐ ์ํด์๋ ๋๋ ์ฑ์ ๊ฐ์ฒด๊ฐ ํ์ํจ. ํ์ง๋ง ์ด ๋๋ ์ฑ ๊ฐ์ฒด๋ฅผ ์๋ฌ๋ ํด๋์ค ๋ด๋ถ์์ ๋ง๋๋ ๊ฒ์ด ์๋๋ผ ์ธ๋ถ์์ ๋ง๋ค์ด์ ๊ฑด๋ค์ฃผ๋ ๋ฐฉ๋ฒ๋ ์์. ์ด๋ ๊ฒ ์ธ๋ถ์์ ์์กด๊ด๊ณ๊ฐ ์๋ ๋์์ ๊ฐ์ ธ์ค๋ ๊ฒ์ ์์กด์ฑ(Dependency)์ ์ธ๋ถ์์ ์ฃผ์
(Inje..
[Android] Base Activity, Fragment
2023.04.16
๋ฐฑ์
์ฉ๋๋ก ์์ฑ import android.os.Bundle import androidx.annotation.LayoutRes import androidx.appcompat.app.AppCompatActivity import androidx.databinding.DataBindingUtil import androidx.databinding.ViewDataBinding import androidx.lifecycle.ViewModel abstract class BaseActivity(@LayoutRes val layoutRes: Int) : AppCompatActivity() { /*@LayoutRes abstract fun getLayoutRes(): Int*/ abstract val viewModel: ..

[Android] OKHttp3๋ฅผ ์ฌ์ฉํ ํค๋ ์ถ๊ฐ, Retrofit2๋ฅผ ์ฌ์ฉํ http ํต์
2023.04.16
OKHttp3, Retrofit2 square์ฌ์์ ๊ฐ๋ฐํ ์คํ์์ค ๋ผ์ด๋ธ๋ฌ๋ฆฌ. http ํด๋ผ์ด์ธํธ๋ก ์ฝ๊ฒ request, response๊ฐ ๊ฐ๋ฅํ๊ฒ ํจ. Retrofit ํน์ง ์ฑ๋ฅ์ด ์ข์. (Volley, AsyncTask์ ๋นํด) annotation์ ์ฌ์ฉํด HTTP ์์
์ ํ๋ ๋ฉ์๋๋ฅผ ์ ์ํ๊ธฐ ๋๋ฌธ์ ๊ฐ๋ฐ์๋ค์ด ํ์๋ฅผ ์์ฝ๊ฒ ์์๋ณผ ์ ์์. (๊ฐ๋
์ฑ ๐) ์ฃผ๊ณ ๋ฐ๋ ๋ฐ์ดํฐ(JSON)๋ฅผ ์๋์ผ๋ก ํ์ฑํด์ฃผ๊ธฐ ๋๋ฌธ์ ์ ์ง๋ณด์๊ฐ ํธ๋ฆฌํจ. ์บ์ฑ์ด ๋ถ๊ฐ๋ฅํจ image loading์ด ๋ถ๊ฐ๋ฅํ์ฌ glide์ ๊ฐ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํด์ผ ํจ. OKHttp3 - ๋ด๊ฐ ์ฌ์ฉํ ๋ถ๋ถ ๋ด๊ฐ ์ฌ์ฉํ ๋ถ๋ถ์ ํด๋ผ์ด์ธํธ์์ request๋ฅผ ๋ ๋ฆด ๋ ํค๋๋ฅผ ๋ฃ์ด์ฃผ๋๋ก ๋ง๋ค์์. // header ์ถ๊ฐ private val ok..
[Android] Custom View
2023.04.15
๋ฉด์ ๊ธฐ๋ก์ฉ Custom View ์ ๋ฆฌ ์ปค์คํ
๋ทฐ ์ฌ์ฉํ๋ ๋ชฉ์ ์์ ๋ง์ถค ๋ ๋๋ง ๋ ๋ทฐ ์ ํ์ ๋ง๋ค ์ ์์ ๊ธฐ์กด view ๊ตฌ์ฑ์์ ๊ทธ๋ฃน์ ์๋ก์ด ๋จ์ผ ๊ตฌ์ฑ์์๋ก ๋ง๋ค ์ ์์ ํค ๋๋ฆ๊ณผ ๊ฐ์ ๋ค๋ฅธ ์ด๋ฒคํธ๋ฅผ ํ์ธํ๊ณ ๋ง์ถค ๋ฐฉ์์ผ๋ก ์ฒ๋ฆฌํ ์ ์์ ์ฌ์ฌ์ฉ ๊ฐ๋ฅ ๊ตฌํ ๋ฐฉ๋ฒ attrs.xml ์ ์ : ์ปค์คํ
๋ทฐ์์ ์ฌ์ฉํ๊ณ ์ ํ๋ ์์ฑ์ด ์๋ค๋ฉด attrs.xml์ ์ ์ํด์ค res > values ํด๋์ attrs.xml ์ ์์ฑ declare-styleable ํ๊ทธ๋ฅผ ์์ฑ ํ name์๋ ์ปค์คํ
๋ทฐ ํด๋์ค๋ช
์ ์
๋ ฅ attr ํ๊ทธ๋ฅผ ์์ฑํด์ name์๋ ์์ฑ๋ช
, format์๋ ์์ฑ์ type์ ์
๋ ฅํด์ค // ์์ ์ปค์คํ
๋ทฐ ํด๋์ค ์์ฑ View ํด๋์ค๋ฅผ ์์ ๋ฐ๋ ํด๋์ค๋ฅผ ์์ฑ, ์ด๋์ ํด๋์ค๋ช
์ ์ attrs..