Programming
iOS: TableView.reloadSections(_:with:)
iOS: TableView.reloadSections(_:with:)
2020.09.14TableView.reloadSections(\_ sections: IndexSet, with animation: UITableView.RowAnimation) ํน์ ์น์
์ ๋ฐ์ดํฐ๋ฅผ Reloadํ๋ ๋ฉ์๋ sections์ ๋ค์ด๊ฐ๋ ๋งค๊ฐ๋ณ์๋ ๋ฒ์๋ฅผ ๋ํ๋๋๋ฐ, ๋ง์ฝ ์ฒซ๋ฒ์งธ ์น์
๋ง Reload ํ๊ณ ์ถ๋ค๋ฉด, TableView.reloadSections(IndexSet(0...0), with: .automatic) ๋ฒ์๋ฅผ 0๋ถํฐ 0๊น์ง ํฌํจ์ผ๋ก ์ค์ ํด์ฃผ๋ฉด ๋๋ค. ์ฒซ๋ฒ์งธ๋ถํฐ ๋๋ฒ์งธ ์น์
๊น์ง Reload ํ๊ณ ์ถ๋ค๋ฉด, TableView.reloadSections(IndexSet(0...1), with: .automatic) StartIndex...EndIndexํํ๋ก ์์ฑํด์ฃผ๋ฉด ๋๋ค. ...์ ์ฌ์ฉํ ๊ฒฝ์ฐ E..
Swift: Optional๊ณผ Optional ์์ ํ๊ฒ ์ฌ์ฉํ๊ธฐ
Swift: Optional๊ณผ Optional ์์ ํ๊ฒ ์ฌ์ฉํ๊ธฐ
2020.09.08๐ก ์ต์
๋ ์ฒด์ด๋ ๋ฑ ์ผ๋ถ ๋น ์ง ๊ฐ๋
์ ์ข ๋ ๊ณต๋ถํ๊ณ ์ ์ฑ์ธ ์์ ๐ก ์ค์ํํธ์์๋ NULL์ nil๋ก ํ๊ธฐํ๋ค. ์ค์ํํธ๋ฅผ ์ฒ์ ์ ํ๋ฉด์ ๊ฐ์ฅ ๋จผ์ ๋ง๋๋ ์์ํ ๋ฌธ๋ฒ์ Optional ์ด ์๋๊น ์๊ฐํ๋ค. ์ฝํ๋ฆฐ์๋ Nullable์ด๋ผ๋ ๊ฐ๋
์ด ์์ง๋ง ๋ด๊ฐ ์ฃผ๋ก ์ฌ์ฉํ๋ ์๋ฐ๋ ํ์ด์ฌ์๋ ์๋ ๋ฌธ๋ฒ์ด์๋ค. (Java8 ๋ถํฐ ๋์
๋์๋ค.) ์๋ฐ(ํน์ ๋ค๋ฅธ ์ธ์ด)์์ ์ฌ์ฉํ๋ ๊ฒ ์ฒ๋ผ ์ค์ํํธ์์ nil์ ์ฌ์ฉํ๋ฉด Xcode์์๋ ๋ฌด์ํ ๋นจ๊ฐ ์ค์ด ๋ฐ๊ธด๋ค. ๊ทธ๋ฆฌ๊ณ ๊ณ ์น๊ธด ํด์ผ ํ๋๊น ์๋ฌธ๋ ๋ชจ๋ฅธ ์ฒด Fix๋ฅผ ๋๋ฌ์ ๊ณ ์น๋ค. ๋ค๋ค ์ด๋ฐ ๊ฒฝํ ํ๋ฒ์ฏค์ ์์ ๊ฑฐ๋ค. ์ํํ ์ง์๊ณผ, ์ข์ ์๋ฃ๋ค์ ์ฝ์ผ๋ฉด์ ์ ๋ฆฌํด๋ดค๋ค. ๋ชจ์ชผ๋ก ๋๊ตฐ๊ฐ์๊ฒ๋ ๋์์ด ๋๊ธธ ๋ฐ๋ผ๋ฉฐ, ์๋ชป๋ ์ง์์ ๋๊ธ๋ก ๋จ๊ฒจ์ฃผ์๋ฉด ๊ฐ์ฌํ๊ฒ ์ต๋๋ค. ์ผ..
XCode: Swift Command Line Tool ํ๋ก์ ํธ์์ Unit Test ํ๊ธฐ
XCode: Swift Command Line Tool ํ๋ก์ ํธ์์ Unit Test ํ๊ธฐ
2020.08.28iOS๋ ์ฒ์ ํ๋ก์ ํธ๋ฅผ ์์ฑํ ๋ ์ ๋ ํ
์คํธ ํฌํจ ์ฌ๋ถ๋ฅผ ์ ํํ ์ ์๋ค. ํ์ง๋ง macOS > Command Line Tool ๋ก ์์ฑํ ํ๋ก์ ํธ๋ ์ด๊ธฐ์ ์ค์ ํ ์ ์๋ค. Command Line Tool๋ก ์์ฑํ ํ๋ก์ ํธ์์ ์ ๋ ํ
์คํธ๋ฅผ ์ถ๊ฐํ๊ณ , ์ ๋ํ
์คํธ๋ฅผ ํด๋ณด๋ ๊ฒ ์ด ๊ธ์ ๋ชฉํ๋ค. ๋จผ์ XCode์์ Command Line Toolํ๋ก์ ํธ๋ฅผ ์์ฑํ๋ค. ๋๋ ์ ๋นํ UnitTestProject๋ผ๋ ์ด๋ฆ์ผ๋ก ๋ง๋ค์๋ค. ์ด๋ฏธ ํ๋ก์ ํธ๊ฐ ์์ฑ๋์๋ค๋ฉด ๊ฑด๋๋ฐ์ด๋ ๋ฌด๊ดํ๋ค. ํ๋ก์ ํธ๋ฅผ ์ฒ์ ์์ฑํ๋ค๋ฉด, ์ฒ์ ๋ณด์ด๋ ํ๋ฉด์ด ํ๋ก์ ํธ ์ค์ ํ์ผ์ด๋ค. ํ๋ก์ ํธ ์ค์ ํ์ผ์ ํ์ผ ๋ค๋น๊ฒ์ดํฐ์ ๊ฐ์ฅ ์๋จ์ ์์นํด์๋ค. ์ตํ๋จ ์ข์ธก์ ์๋ + (add a target)์ ํด๋ฆญํ๋ค. Choose a template..
BOJ: ๋จ์ด ๋ค์ง๊ธฐ2 - 17413๋ฒ
BOJ: ๋จ์ด ๋ค์ง๊ธฐ2 - 17413๋ฒ
2020.08.2717413๋ฒ: ๋จ์ด ๋ค์ง๊ธฐ 2 ๋ฌธ์์ด S๊ฐ ์ฃผ์ด์ก์ ๋, ์ด ๋ฌธ์์ด์์ ๋จ์ด๋ง ๋ค์ง์ผ๋ ค๊ณ ํ๋ค. ๋จผ์ , ๋ฌธ์์ด S๋ ์๋์๊ณผ ๊ฐ์ ๊ท์น์ ์งํจ๋ค. ์ํ๋ฒณ ์๋ฌธ์('a'-'z'), ์ซ์('0'-'9'), ๊ณต๋ฐฑ(' '), ํน์ ๋ฌธ์('')๋ก๋ง ์ด๋ฃจ์ด์ ธ ๏ฟฝ www.acmicpc.net ๋ฌธ์ ๋ฌธ์์ด S๊ฐ ์ฃผ์ด์ก์ ๋, ์ด ๋ฌธ์์ด์์ ๋จ์ด๋ง ๋ค์ง์ผ๋ ค๊ณ ํ๋ค. ๋จผ์ , ๋ฌธ์์ด S๋ ์๋์๊ณผ ๊ฐ์ ๊ท์น์ ์งํจ๋ค. ์ํ๋ฒณ ์๋ฌธ์('a'-'z'), ์ซ์('0'-'9'), ๊ณต๋ฐฑ(' '), ํน์ ๋ฌธ์('')๋ก๋ง ์ด๋ฃจ์ด์ ธ ์๋ค. ๋ฌธ์์ด์ ์์๊ณผ ๋์ ๊ณต๋ฐฑ์ด ์๋๋ค. ''๊ฐ ๋ฌธ์์ด์ ์๋ ๊ฒฝ์ฐ ๋ฒ๊ฐ์๊ฐ๋ฉด์ ๋ฑ์ฅํ๋ฉฐ, '
BOJ: ๊ทธ๋ฃน ๋จ์ด ์ฒด์ปค - 1316๋ฒ
BOJ: ๊ทธ๋ฃน ๋จ์ด ์ฒด์ปค - 1316๋ฒ
2020.08.261316๋ฒ: ๊ทธ๋ฃน ๋จ์ด ์ฒด์ปค ๊ทธ๋ฃน ๋จ์ด๋ ๋จ์ด์ ์กด์ฌํ๋ ๋ชจ๋ ๋ฌธ์์ ๋ํด์, ๊ฐ ๋ฌธ์๊ฐ ์ฐ์ํด์ ๋ํ๋๋ ๊ฒฝ์ฐ๋ง์ ๋งํ๋ค. ์๋ฅผ ๋ค๋ฉด, ccazzzzbb๋ c, a, z, b๊ฐ ๋ชจ๋ ์ฐ์ํด์ ๋ํ๋๊ณ , kin๋ k, i, n์ด ์ฐ์ํด์ ๋ํ๋๊ธฐ ๋๏ฟฝ www.acmicpc.net ๋ฌธ์ ๊ทธ๋ฃน ๋จ์ด๋ ๋จ์ด์ ์กด์ฌํ๋ ๋ชจ๋ ๋ฌธ์์ ๋ํด์, ๊ฐ ๋ฌธ์๊ฐ ์ฐ์ํด์ ๋ํ๋๋ ๊ฒฝ์ฐ๋ง์ ๋งํ๋ค. ์๋ฅผ ๋ค๋ฉด, ccazzzzbb๋ c, a, z, b๊ฐ ๋ชจ๋ ์ฐ์ํด์ ๋ํ๋๊ณ , kin๋ k, i, n์ด ์ฐ์ํด์ ๋ํ๋๊ธฐ ๋๋ฌธ์ ๊ทธ๋ฃน ๋จ์ด์ด์ง๋ง, aabbbccb๋ b๊ฐ ๋จ์ด์ ธ์ ๋ํ๋๊ธฐ ๋๋ฌธ์ ๊ทธ๋ฃน ๋จ์ด๊ฐ ์๋๋ค. ๋จ์ด N๊ฐ๋ฅผ ์
๋ ฅ์ผ๋ก ๋ฐ์ ๊ทธ๋ฃน ๋จ์ด์ ๊ฐ์๋ฅผ ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ๋ด๊ฐ ์์ฑํ ์ฝ๋ # https:/..
BOJ: ํฌ๋ก์ํฐ์ ์ํ๋ฒณ - 2941๋ฒ
BOJ: ํฌ๋ก์ํฐ์ ์ํ๋ฒณ - 2941๋ฒ
2020.08.262941๋ฒ: ํฌ๋ก์ํฐ์ ์ํ๋ฒณ ๋ฌธ์ ์์ ์๋ ์ด์์ฒด์ ์์ ํฌ๋ก์ํฐ์ ์ํ๋ฒณ์ ์
๋ ฅํ ์๊ฐ ์์๋ค. ๋ฐ๋ผ์, ๋ค์๊ณผ ๊ฐ์ด ํฌ๋ก์ํฐ์ ์ํ๋ฒณ์ ๋ณ๊ฒฝํด์ ์
๋ ฅํ๋ค. ํฌ๋ก์ํฐ์ ์ํ๋ฒณ ๋ณ๊ฒฝ ฤ c= ฤ c- dลพ dz= ฤ d- lj lj nj nj š s= www.acmicpc.net ๋ฌธ์ ์์ ์๋ ์ด์์ฒด์ ์์ ํฌ๋ก์ํฐ์ ์ํ๋ฒณ์ ์
๋ ฅํ ์๊ฐ ์์๋ค. ๋ฐ๋ผ์, ๋ค์๊ณผ ๊ฐ์ด ํฌ๋ก์ํฐ์ ์ํ๋ฒณ์ ๋ณ๊ฒฝํด์ ์
๋ ฅํ๋ค. ์๋ฅผ ๋ค์ด, ljes=njak์ ํฌ๋ก์ํฐ์ ์ํ๋ฒณ 6๊ฐ(lj, e, š, nj, a, k)๋ก ์ด๋ฃจ์ด์ ธ ์๋ค. ๋จ์ด๊ฐ ์ฃผ์ด์ก์ ๋, ๋ช ๊ฐ์ ํฌ๋ก์ํฐ์ ์ํ๋ฒณ์ผ๋ก ์ด๋ฃจ์ด์ ธ ์๋์ง ์ถ๋ ฅํ๋ค. dลพ๋ ๋ฌด์กฐ๊ฑด ํ๋์ ์ํ๋ฒณ์ผ๋ก ์ฐ์ด๊ณ , d์ ลพ๊ฐ ๋ถ๋ฆฌ๋ ๊ฒ์ผ๋ก ๋ณด์ง ์๋๋ค. lj์ nj๋ ๋ง์ฐฌ๊ฐ์ง์ด๋ค. ์ ๋ชฉ..
Shell Script: ๋ณ์์ ์ต๋ ํฌ๊ธฐ๊ฐ ์ ํด์ ธ ์์๊น?
Shell Script: ๋ณ์์ ์ต๋ ํฌ๊ธฐ๊ฐ ์ ํด์ ธ ์์๊น?
2020.08.25Shell Script๋ฅผ ์์ฑํ๋ค๊ฐ ๋๋ ํฐ๋ฆฌ์ ํ์ผ์ ํ์ํ๊ณ , ํ์ํ ํ์ผ์ ์ด๋ฆ์ ๋ณ์์ ์ ์ฅํ๋ค๊ฐ ๊ฐ์๊ธฐ ๊ถ๊ธํด์ก๋ค. Shell์์๋ ๋ณ์์ ์ต๋ ํฌ๊ธฐ๊ฐ ์ ํด์ ธ ์์๊น? ๊ตฌ๊ธ์ shell variable max size ๋ผ๊ณ ๊ฒ์ํ๊ณ (์งง์ ์์ด ์ค๋ ฅ...), ์คํ์ค๋ฒํ๋ก์ฐ์์ ๋ต์ ์ฐพ์๋ค. It depends on your OS and/or the shell flavours and versions. It is safer to use temporary files if you expect variable values to exceed 1-4kB. ๋์ถฉ ๋ฒ์ญํ์๋ฉด OS์ shell ๋ฒ์ ์ ๋ฐ๋ผ ๋ค๋ฅธ๋ฐ, ๋ณ์์ ํฌ๊ธฐ๊ฐ 1-4kb๊ฐ ๋๋๋ค๋ฉด ์์ ํ์ผ์ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข๋ค๊ณ ํ๋ค. Shell variable..
์ฝ๋ฉ ์ธํฐ๋ทฐ ์์ ๋ถ์: 1.3 URLํ
์ฝ๋ฉ ์ธํฐ๋ทฐ ์์ ๋ถ์: 1.3 URLํ
2020.07.23์ด ๊ธ์ ๋ณดํธ๋์ด ์๊ธฐ ๋๋ฌธ์ ์ด๊ฒ์ ๋ณด๋ ค๋ฉด ์ํธ๊ฐ ํ์ํฉ๋๋ค.
์ฝ๋ฉ ์ธํฐ๋ทฐ ์์ ๋ถ์: 1.2 ์์ด ํ์ธ
์ฝ๋ฉ ์ธํฐ๋ทฐ ์์ ๋ถ์: 1.2 ์์ด ํ์ธ
2020.07.22์ด ๊ธ์ ๋ณดํธ๋์ด ์๊ธฐ ๋๋ฌธ์ ์ด๊ฒ์ ๋ณด๋ ค๋ฉด ์ํธ๊ฐ ํ์ํฉ๋๋ค.
์ฝ๋ฉ ์ธํฐ๋ทฐ ์์ ๋ถ์: 1.1 ์ค๋ณต์ด ์๋๊ฐ
์ฝ๋ฉ ์ธํฐ๋ทฐ ์์ ๋ถ์: 1.1 ์ค๋ณต์ด ์๋๊ฐ
2020.07.22์ด ๊ธ์ ๋ณดํธ๋์ด ์๊ธฐ ๋๋ฌธ์ ์ด๊ฒ์ ๋ณด๋ ค๋ฉด ์ํธ๊ฐ ํ์ํฉ๋๋ค.
ํ๋ก๊ทธ๋๋จธ์ค: ์ฒด์ก๋ณต
ํ๋ก๊ทธ๋๋จธ์ค: ์ฒด์ก๋ณต
2020.07.03์ฝ๋ฉํ
์คํธ ์ฐ์ต - ์ฒด์ก๋ณต ์ ์ฌ์๊ฐ์ ๋๋์ด ๋ค์ด, ์ผ๋ถ ํ์์ด ์ฒด์ก๋ณต์ ๋๋๋นํ์ต๋๋ค. ๋คํํ ์ฌ๋ฒ ์ฒด์ก๋ณต์ด ์๋ ํ์์ด ์ด๋ค์๊ฒ ์ฒด์ก๋ณต์ ๋น๋ ค์ฃผ๋ ค ํฉ๋๋ค. ํ์๋ค์ ๋ฒํธ๋ ์ฒด๊ฒฉ ์์ผ๋ก ๋งค๊ฒจ์ ธ ์์ด, ๋ฐ๋ก ์๋ฒ๏ฟฝ programmers.co.kr ๋ฌธ์ ์ ์ฌ์๊ฐ์ ๋๋์ด ๋ค์ด, ์ผ๋ถ ํ์์ด ์ฒด์ก๋ณต์ ๋๋๋นํ์ต๋๋ค. ๋คํํ ์ฌ๋ฒ ์ฒด์ก๋ณต์ด ์๋ ํ์์ด ์ด๋ค์๊ฒ ์ฒด์ก๋ณต์ ๋น๋ ค์ฃผ๋ ค ํฉ๋๋ค. ํ์๋ค์ ๋ฒํธ๋ ์ฒด๊ฒฉ ์์ผ๋ก ๋งค๊ฒจ์ ธ ์์ด, ๋ฐ๋ก ์๋ฒํธ์ ํ์์ด๋ ๋ฐ๋ก ๋ท๋ฒํธ์ ํ์์๊ฒ๋ง ์ฒด์ก๋ณต์ ๋น๋ ค์ค ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, 4๋ฒ ํ์์ 3๋ฒ ํ์์ด๋ 5๋ฒ ํ์์๊ฒ๋ง ์ฒด์ก๋ณต์ ๋น๋ ค์ค ์ ์์ต๋๋ค. ์ฒด์ก๋ณต์ด ์์ผ๋ฉด ์์
์ ๋ค์ ์ ์๊ธฐ ๋๋ฌธ์ ์ฒด์ก๋ณต์ ์ ์ ํ ๋น๋ ค ์ต๋ํ ๋ง์ ํ์์ด ์ฒด์ก์์
์ ๋ค์ด์ผ ํฉ๋๋ค. ์ ์ฒด ํ..
ํ๋ก๊ทธ๋๋จธ์ค: ์ ์ผ ์์ ์ ์ ๊ฑฐํ๊ธฐ
ํ๋ก๊ทธ๋๋จธ์ค: ์ ์ผ ์์ ์ ์ ๊ฑฐํ๊ธฐ
2020.06.18์ฝ๋ฉํ
์คํธ ์ฐ์ต - ์ ์ผ ์์ ์ ์ ๊ฑฐํ๊ธฐ ์ ์๋ฅผ ์ ์ฅํ ๋ฐฐ์ด, arr ์์ ๊ฐ์ฅ ์์ ์๋ฅผ ์ ๊ฑฐํ ๋ฐฐ์ด์ ๋ฆฌํดํ๋ ํจ์, solution์ ์์ฑํด์ฃผ์ธ์. ๋จ, ๋ฆฌํดํ๋ ค๋ ๋ฐฐ์ด์ด ๋น ๋ฐฐ์ด์ธ ๊ฒฝ์ฐ์ ๋ฐฐ์ด์ -1์ ์ฑ์ ๋ฆฌํดํ์ธ์. ์๋ฅผ๋ค์ด arr์ด [4,3,2,1 programmers.co.kr ๋ฌธ์ ์ ์๋ฅผ ์ ์ฅํ ๋ฐฐ์ด, arr ์์ ๊ฐ์ฅ ์์ ์๋ฅผ ์ ๊ฑฐํ ๋ฐฐ์ด์ ๋ฆฌํดํ๋ ํจ์, solution์ ์์ฑํด์ฃผ์ธ์. ๋จ, ๋ฆฌํดํ๋ ค๋ ๋ฐฐ์ด์ด ๋น ๋ฐฐ์ด์ธ ๊ฒฝ์ฐ์ ๋ฐฐ์ด์ -1์ ์ฑ์ ๋ฆฌํดํ์ธ์. ์๋ฅผ๋ค์ด arr์ด [4,3,2,1]์ธ ๊ฒฝ์ฐ๋ [4,3,2]๋ฅผ ๋ฆฌํด ํ๊ณ , [10]๋ฉด [-1]์ ๋ฆฌํด ํฉ๋๋ค. ์ ํ ์กฐ๊ฑด arr์ ๊ธธ์ด 1 ์ด์์ธ ๋ฐฐ์ด์
๋๋ค. ์ธ๋ฑ์ค i, j์ ๋ํด i ≠ j์ด๋ฉด arr[i] ≠ arr[j] ์
..