CSS ์ ์šฉ๊ณผ์ • :: cascade, specificity, inheritance์— ๊ด€ํ•˜์—ฌ
์›น (WEB)/๊ณต๋ถ€ 2021. 10. 17. 10:42

์„ ํƒ์ž ์ถฉ๋Œ ์‹œ /*css*/ .special{ color: blue; } p{ color: red; } css๋Š” cascade์™€ specificity๋ผ๊ณ  ๋ถˆ๋ฆฌ๋Š” rule์„ ๊ฐ€์ง€๊ณ  ์žˆ๊ณ , ํ•ด๋‹น rule์— ๋”ฐ๋ผ ์ถฉ๋Œ ์‹œ ๋” ๊ฐ•ํ•œ ์„ ํƒ์ž๊ฐ€ ์ ์šฉ๋œ๋‹ค. cascade rule : ๋’ค์— ์ ์šฉ๋œ ์Šคํƒ€์ผ์ด ์•ž์„  ์Šคํƒ€์ผ์„ ๋ฎ์–ด์“ด๋‹ค. specificity rule : ์š”์†Œ๋ฅผ ๋” ํŠน์ •ํ•˜๋Š” ์„ ํƒ์ž๊ฐ€ ์Šคํƒ€์ผ์„ ์ฐจ์ง€ํ•œ๋‹ค. ๋”ฐ๋ผ์„œ ์œ„์˜ ์˜ˆ์ œ์—์„œ specificty rule์— ์˜ํ•ด color๋Š” blue๊ฐ€ ๋œ๋‹ค. specificity specificity๋Š” 4๊ฐ€์ง€์˜ ๋‹จ์œ„๋กœ ์ธก์ •๋œ๋‹ค. Thousands : style ์†์„ฑ ๋‚ด์— ์ •์˜๋˜์–ด ์žˆ๋Š” style(inline style)์ผ ๊ฒฝ์šฐ Hundreds : ID selector๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ..

[c++] BOJ 20040 :: ์‚ฌ์ดํด ๊ฒŒ์ž„
Algorithm ๋ฌธ์ œ/BOJ 2021. 10. 10. 11:09

๋ฌธ์ œ [์‚ฌ์ดํด ๊ฒŒ์ž„ ๋ฌธ์ œ ๋ฐ”๋กœ๊ฐ€๊ธฐ] 20040๋ฒˆ: ์‚ฌ์ดํด ๊ฒŒ์ž„ ์‚ฌ์ดํด ๊ฒŒ์ž„์€ ๋‘ ๋ช…์˜ ํ”Œ๋ ˆ์ด์–ด๊ฐ€ ์ฐจ๋ก€๋Œ€๋กœ ๋Œ์•„๊ฐ€๋ฉฐ ์ง„ํ–‰ํ•˜๋Š” ๊ฒŒ์ž„์œผ๋กœ, ์„  ํ”Œ๋ ˆ์ด์–ด๊ฐ€ ํ™€์ˆ˜ ๋ฒˆ์งธ ์ฐจ๋ก€๋ฅผ, ํ›„ ํ”Œ๋ ˆ์ด์–ด๊ฐ€ ์ง์ˆ˜ ๋ฒˆ์งธ ์ฐจ๋ก€๋ฅผ ์ง„ํ–‰ํ•œ๋‹ค. ๊ฒŒ์ž„ ์‹œ์ž‘ ์‹œ 0 ๋ถ€ํ„ฐ n − 1 ๊นŒ์ง€ ๊ณ ์œ ํ•œ www.acmicpc.net ์‚ฌ์ดํด ๊ฒŒ์ž„์€ ๋‘ ๋ช…์˜ ํ”Œ๋ ˆ์ด์–ด๊ฐ€ ์ฐจ๋ก€๋Œ€๋กœ ๋Œ์•„๊ฐ€๋ฉฐ ์ง„ํ–‰ํ•˜๋Š” ๊ฒŒ์ž„์œผ๋กœ, ์„  ํ”Œ๋ ˆ์ด์–ด๊ฐ€ ํ™€์ˆ˜ ๋ฒˆ์งธ ์ฐจ๋ก€๋ฅผ, ํ›„ ํ”Œ๋ ˆ์ด์–ด๊ฐ€ ์ง์ˆ˜ ๋ฒˆ์งธ ์ฐจ๋ก€๋ฅผ ์ง„ํ–‰ํ•œ๋‹ค. ๊ฒŒ์ž„ ์‹œ์ž‘ ์‹œ 0 ๋ถ€ํ„ฐ n − 1 ๊นŒ์ง€ ๊ณ ์œ ํ•œ ๋ฒˆํ˜ธ๊ฐ€ ๋ถ€์—ฌ๋œ ํ‰๋ฉด ์ƒ์˜ ์  n ๊ฐœ๊ฐ€ ์ฃผ์–ด์ง€๋ฉฐ, ์ด ์ค‘ ์–ด๋Š ์„ธ ์ ๋„ ์ผ์ง์„  ์œ„์— ๋†“์ด์ง€ ์•Š๋Š”๋‹ค. ๋งค ์ฐจ๋ก€ ๋งˆ๋‹ค ํ”Œ๋ ˆ์ด์–ด๋Š” ๋‘ ์ ์„ ์„ ํƒํ•ด์„œ ์ด๋ฅผ ์—ฐ๊ฒฐํ•˜๋Š” ์„ ๋ถ„์„ ๊ธ‹๋Š”๋ฐ, ์ด์ „์— ๊ทธ๋ฆฐ ์„ ๋ถ„์„ ๋‹ค์‹œ ๊ทธ์„ ์ˆ˜๋Š” ์—†์ง€๋งŒ ์ด๋ฏธ ๊ทธ๋ฆฐ ๋‹ค๋ฅธ ..

[c++] BOJ 7579 :: ์•ฑ
Algorithm ๋ฌธ์ œ/BOJ 2021. 10. 10. 11:01

๋ฌธ์ œ [์•ฑ ๋ฌธ์ œ ๋ฐ”๋กœ๊ฐ€๊ธฐ] 7579๋ฒˆ: ์•ฑ ์ž…๋ ฅ์€ 3์ค„๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๋‹ค. ์ฒซ ์ค„์—๋Š” ์ •์ˆ˜ N๊ณผ M์ด ๊ณต๋ฐฑ๋ฌธ์ž๋กœ ๊ตฌ๋ถ„๋˜์–ด ์ฃผ์–ด์ง€๋ฉฐ, ๋‘˜์งธ ์ค„๊ณผ ์…‹์งธ ์ค„์—๋Š” ๊ฐ๊ฐ N๊ฐœ์˜ ์ •์ˆ˜๊ฐ€ ๊ณต๋ฐฑ๋ฌธ์ž๋กœ ๊ตฌ๋ถ„๋˜์–ด ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„์˜ N๊ฐœ์˜ ์ •์ˆ˜๋Š” ํ˜„์žฌ ํ™œ www.acmicpc.net ํ˜„์žฌ N๊ฐœ์˜ ์•ฑ, A1, ..., AN์ด ํ™œ์„ฑํ™” ๋˜์–ด ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•˜์ž. ์ด๋“ค ์•ฑ Ai๋Š” ๊ฐ๊ฐ mi ๋ฐ”์ดํŠธ๋งŒํผ์˜ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋‹ค. ๋˜ํ•œ, ์•ฑ Ai๋ฅผ ๋น„ํ™œ์„ฑํ™”ํ•œ ํ›„์— ๋‹ค์‹œ ์‹คํ–‰ํ•˜๊ณ ์ž ํ•  ๊ฒฝ์šฐ, ์ถ”๊ฐ€์ ์œผ๋กœ ๋“ค์–ด๊ฐ€๋Š” ๋น„์šฉ(์‹œ๊ฐ„ ๋“ฑ)์„ ์ˆ˜์น˜ํ™” ํ•œ ๊ฒƒ์„ ci ๋ผ๊ณ  ํ•˜์ž. ์ด๋Ÿฌํ•œ ์ƒํ™ฉ์—์„œ ์‚ฌ์šฉ์ž๊ฐ€ ์ƒˆ๋กœ์šด ์•ฑ B๋ฅผ ์‹คํ–‰ํ•˜๊ณ ์ž ํ•˜์—ฌ, ์ถ”๊ฐ€๋กœ M ๋ฐ”์ดํŠธ์˜ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ํ•„์š”ํ•˜๋‹ค๊ณ  ํ•˜์ž. ์ฆ‰, ํ˜„์žฌ ํ™œ์„ฑํ™” ๋˜์–ด ์žˆ๋Š” ์•ฑ A1, ..., AN ์ค‘์—์„œ ๋ช‡ ๊ฐœ๋ฅผ ๋น„..

[c++] BOJ 1501 :: ์˜์–ด ์ฝ๊ธฐ
Algorithm ๋ฌธ์ œ/BOJ 2021. 10. 7. 20:22

๋ฌธ์ œ [์˜์–ด ์ฝ๊ธฐ ๋ฌธ์ œ ๋ฐ”๋กœ๊ฐ€๊ธฐ] 1501๋ฒˆ: ์˜์–ด ์ฝ๊ธฐ ์ฒซ์งธ ์ค„์— ์‚ฌ์ „์— ์žˆ๋Š” ๋‹จ์–ด๋“ค์˜ ๊ฐœ์ˆ˜ N(0 ≤ N ≤ 10,000)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‹ค์Œ N๊ฐœ์˜ ์ค„์—๋Š” ๊ฐ ์ค„์— ํ•˜๋‚˜์”ฉ, ์˜์–ด ์‚ฌ์ „์— ์žˆ๋Š” ๋‹จ์–ด๋“ค์ด ์ฃผ์–ด์ง„๋‹ค. ๊ฐ ๋‹จ์–ด์˜ ๊ธธ์ด๋Š” 100์ž๋ฅผ ๋„˜์ง€ ์•Š๋Š”๋‹ค. ๋‹ค์Œ ์ค„์— www.acmicpc.net ํ˜น์‹œ ์ธํ„ฐ๋„ท์„ ํ•˜๋‹ค๊ฐ€, ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์‹์˜ ๋ฌธ์žฅ์„ ๋ณธ ์ ์ด ์žˆ๋Š”๊ฐ€? It is itnersetnig taht pepole can raed smoe grabeld wrods. ์›๋ž˜์˜ ๋ฌธ์žฅ์€ 'It is interesting that people can read some garbled words'์ด๋‹ค. ๊ฐ๊ฐ์˜ ๋‹จ์–ด๋“ค์€ ์ œ์ผ ์ฒซ ๋ฌธ์ž์™€ ์ œ์ผ ๋ ๋ฌธ์ž๋ฅผ ์ œ์™ธํ•˜๊ณ ๋Š” ์ˆœ์„œ๊ฐ€ ๋’ค์„ž์—ฌ ์žˆ๋‹ค. ํ•œ ๋Œ€ํ•™์—์„œ ์‹œํ–‰ํ•œ ์—ฐ๊ตฌ ์กฐ์‚ฌ ๊ฒฐ๊ณผ์—..

[c++] BOJ 1253 :: ์ข‹๋‹ค
Algorithm ๋ฌธ์ œ/BOJ 2021. 9. 28. 19:51

๋ฌธ์ œ ์ข‹๋‹ค ๋ฌธ์ œ ๋ฐ”๋กœ๊ฐ€๊ธฐ N๊ฐœ์˜ ์ˆ˜ ์ค‘์—์„œ ์–ด๋–ค ์ˆ˜๊ฐ€ ๋‹ค๋ฅธ ์ˆ˜ ๋‘ ๊ฐœ์˜ ํ•ฉ์œผ๋กœ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๋‹ค๋ฉด ๊ทธ ์ˆ˜๋ฅผ “์ข‹๋‹ค(GOOD)”๊ณ  ํ•œ๋‹ค. N๊ฐœ์˜ ์ˆ˜๊ฐ€ ์ฃผ์–ด์ง€๋ฉด ๊ทธ ์ค‘์—์„œ ์ข‹์€ ์ˆ˜์˜ ๊ฐœ์ˆ˜๋Š” ๋ช‡ ๊ฐœ์ธ์ง€ ์ถœ๋ ฅํ•˜๋ผ. ์ˆ˜์˜ ์œ„์น˜๊ฐ€ ๋‹ค๋ฅด๋ฉด ๊ฐ’์ด ๊ฐ™์•„๋„ ๋‹ค๋ฅธ ์ˆ˜์ด๋‹ค. ํ’€์ด ์ฒ˜์Œ์— ์ƒ๊ฐํ–ˆ๋˜ ๋ฐฉ๋ฒ•์€ ์ฃผ์–ด์ง„ ์ˆซ์ž๋“ค์„ for๋ฌธ 3์ค‘์œผ๋กœ ๋Œ๋ฉด์„œ ๋‘ ์ˆ˜์˜ ํ•ฉ์œผ๋กœ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ์ง€ ์ฐพ๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค. ์ž…๋ ฅ์ด ํฌ์ง€ ์•Š์•„์„œ ๊ฐ€๋Šฅํ•  ๊ฒƒ์ด๋ผ ์ƒ๊ฐํ•˜์˜€๊ณ  ํ•ด๋‹น ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•  ๊ฒฝ์šฐ ์ฐพ์œผ๋ ค๋Š” ์ˆซ์ž๋ณด๋‹ค ์ž‘์€ ์ˆ˜๋“ค๋งŒ ๊ณ ๋ คํ•˜๋ฉด ๋œ๋‹ค๊ณ  ์ƒ๊ฐํ•˜์˜€๋‹ค. ํ•˜์ง€๋งŒ ๋ฌธ์ œ์—์„œ ์Œ์ˆ˜๊นŒ์ง€ ๋ฒ”์œ„์— ๋“ค์–ด๊ฐ€๋ฏ€๋กœ target์ด ๋œ ์ˆ˜๋ณด๋‹ค ํฐ ์ˆ˜์— ์Œ์ˆ˜๊ฐ€ ๋”ํ•ด์ ธ์„œ target์ธ ์ˆ˜๋ฅผ ๋งŒ๋“ค ์ˆ˜๋„ ์žˆ๋‹ค. ๋”ฐ๋ผ์„œ ์–ด์ฐจํ”ผ ์ž…๋ ฅ์ด 10^3 ๋ฐ–์— ๋˜์ง€ ์•Š์œผ๋‹ˆ ์ฃผ์–ด์ง„ ์ˆซ์ž๋“ค ์ค‘ 2๊ฐœ์”ฉ ๊ณจ๋ผ์„œ..

[c++] BOJ 4195 :: ์นœ๊ตฌ ๋„คํŠธ์›Œํฌ
Algorithm ๋ฌธ์ œ/BOJ 2021. 9. 28. 19:49

๋ฌธ์ œ ์นœ๊ตฌ ๋„คํŠธ์›Œํฌ ๋ฌธ์ œ ๋ฐ”๋กœ๊ฐ€๊ธฐ ๋ฏผํ˜์ด๋Š” ์†Œ์…œ ๋„คํŠธ์›Œํฌ ์‚ฌ์ดํŠธ์—์„œ ์นœ๊ตฌ๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ์„ ์ข‹์•„ํ•˜๋Š” ์นœ๊ตฌ์ด๋‹ค. ์šฐํ‘œ๋ฅผ ๋ชจ์œผ๋Š” ์ทจ๋ฏธ๊ฐ€ ์žˆ๋“ฏ์ด, ๋ฏผํ˜์ด๋Š” ์†Œ์…œ ๋„คํŠธ์›Œํฌ ์‚ฌ์ดํŠธ์—์„œ ์นœ๊ตฌ๋ฅผ ๋ชจ์œผ๋Š” ๊ฒƒ์ด ์ทจ๋ฏธ์ด๋‹ค. ์–ด๋–ค ์‚ฌ์ดํŠธ์˜ ์นœ๊ตฌ ๊ด€๊ณ„๊ฐ€ ์ƒ๊ธด ์ˆœ์„œ๋Œ€๋กœ ์ฃผ์–ด์กŒ์„ ๋•Œ, ๋‘ ์‚ฌ๋žŒ์˜ ์นœ๊ตฌ ๋„คํŠธ์›Œํฌ์— ๋ช‡ ๋ช…์ด ์žˆ๋Š”์ง€ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ์นœ๊ตฌ ๋„คํŠธ์›Œํฌ๋ž€ ์นœ๊ตฌ ๊ด€๊ณ„๋งŒ์œผ๋กœ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋Š” ์‚ฌ์ด๋ฅผ ๋งํ•œ๋‹ค. ํ’€์ด ํŠน์ • ์ด๋ฆ„์ด ์ฃผ์–ด์กŒ์„ ๋•Œ ํ•ด๋‹น ์ด๋ฆ„์ด ์†ํ•œ ๊ทธ๋ฃน์„ ์•Œ ์ˆ˜ ์žˆ์–ด์•ผ ํ•˜๊ณ , ํ•ด๋‹น ๊ทธ๋ฃน์— ์žˆ๋Š” ์ด๋ฆ„์˜ ๊ฐœ์ˆ˜๋ฅผ ํŒŒ์•…ํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค. ์ด๋ฆ„์ด ์†ํ•œ ๊ทธ๋ฃน์„ ๋ฐ”๋กœ ์ฐพ๊ธฐ ์œ„ํ•ด์„œ๋Š” map๋ฅผ ์ด์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ํ•ด๋‹น ๊ทธ๋ฃน์— ์žˆ๋Š” ์ด๋ฆ„์˜ ๊ฐœ์ˆ˜๋ฅผ ํŒŒ์•…ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ฐฉ์‹์œผ๋กœ ๊ตฌํ˜„์ด ๊ฐ€๋Šฅํ•˜๋‹ค. set group[..

Javascript ๊ธฐ๋ณธ :: declare (Typescript์—์„œ type ์—†์„ ๋•Œ)
์›น (WEB)/๊ณต๋ถ€ 2021. 9. 22. 14:15

๋งŒ์ผ Typescript๋กœ ๊ฐœ๋ฐœํ•˜๋˜ ์ค‘์— ์•„์ฃผ ์ž˜ ์ž‘์„ฑ๋œ JS ๋ชจ๋“ˆ์„ ๊ฐ€์ ธ์™€์„œ ์“ฐ๊ณ ์ž ํ•œ๋‹ค๋ฉด, ํ•ด๋‹น ๋ชจ๋“ˆ ๋‚ด์˜ ํ•จ์ˆ˜๋Š” typescript๋กœ ์ •์˜๋˜์–ด์žˆ์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ์ปดํŒŒ์ผ ๊ณผ์ •์—์„œ ์˜ค๋ฅ˜๊ฐ€ ๋œฌ๋‹ค. ๋ชจ๋“ˆ์ด ํ•ด๋‹น ์†์„ฑ์„ ๊ฐ€์ง€๊ณ  ์žˆ์Œ์—๋„ type์ด ์ •ํ•ด์ ธ์žˆ์ง€ ์•Š์•„์„œ ๊ฐ€์ง€๊ณ  ์žˆ์ง€ ์•Š๋‹ค๊ณ  ํ•ด์„ํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ๋‹ค์Œ๊ณผ ๊ฐ™์ด declare ํ‚ค์›Œ๋“œ๋ฅผ ์จ์„œ ์ •์˜ํ•ด๋‘๋ฉด type์ด ์ธ์‹๋˜์–ด typescript compiler๊ฐ€ ํ•ด์„ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋œ๋‹ค. declare let module: any ๊ฐ„๋‹จํžˆ ๋งํ•ด์„œ ์ปดํŒŒ์ผ๋Ÿฌ์—๊ฒŒ "์ด๊ฑด ์ด๋ฏธ ์กด์žฌํ•˜๊ณ  ๋‹ค๋ฅธ ์ฝ”๋“œ์—์„œ ์ฐธ์กฐํ•  ์ˆ˜ ์žˆ๋‹ค."๋ผ๊ณ  ์„ค๋ช…ํ•˜๋Š” ๊ฒƒ์ด๋‹ค.

CommonJS vs ES Modules
์›น (WEB)/๊ณต๋ถ€ 2021. 9. 22. 13:57

๋ฐฐ๊ฒฝ ํ•จ์ˆ˜๋“ค๋ผ๋ฆฌ ๋ฐ์ดํ„ฐ๋ฅผ ๊ณต์œ ํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ์–ด๋–ป๊ฒŒ ํ•ด์•ผํ• ๊นŒ? ์ „์—ญ ์Šค์ฝ”ํ”„์— ํ•ด๋‹น ๋ฐ์ดํ„ฐ๋ฅผ ๋‘”๋‹ค๋ฉด ๋‹ค๋ฅธ ๋‚ด๋ถ€ ์š”์†Œ์— ์˜ํ•ด ๋ง๊ฐ€์งˆ ์ˆ˜๋„ ์žˆ๊ณ , ์ˆœ์„œ๊ฐ€ ๋’ค์—‰์ผœ ์ „์—ญ ์Šค์ฝ”ํ”„์˜ ์š”์†Œ๊ฐ€ ์กด์žฌํ•˜์ง€ ์•Š์„ ์ˆ˜๋„ ์žˆ๋‹ค. ๋”ฐ๋ผ์„œ ๋ชจ๋“ˆ์ด๋ผ๋Š” ๋ฐฉ์‹์„ ์ด์šฉํ•˜๋ฉด ๊ฐ๊ฐ ํ•„์š”ํ•œ ๋ชจ๋“ˆ์„ importํ•˜์—ฌ ์‚ฌ์šฉํ•จ์œผ๋กœ์จ ์–ด๋””์—์„œ ์—๋Ÿฌ๊ฐ€ ๋‚˜๋Š”์ง€ ํŒŒ์•…ํ•˜๊ธฐ ์‰ฝ๋‹ค. ๋ชจ๋“ˆ์„ ๋งŒ๋“ค๊ณ  import, export ํ•˜๋Š” ์‹œ์Šคํ…œ์„ ๋ชจ๋“ˆ ์‹œ์Šคํ…œ์ด๋ผ ํ•˜๋Š”๋ฐ ํ˜„์žฌ 2๊ฐ€์ง€์˜ ๋ชจ๋“ˆ ์‹œ์Šคํ…œ์ด ํ™œ๋ฐœํ•˜๊ฒŒ ์‚ฌ์šฉ๋˜๊ณ  ์žˆ๋‹ค. CommonJS ES modules ์ฐจ์ด์  ๊ธฐ์ดˆ ๋ฌธ๋ฒ• CommonJS const module = require('์–ด์ฉŒ๊ตฌ'); const { func } = require('์–ด์ฉŒ๊ตฌ'); module.exports = '์–ด์ฉŒ๊ตฌ'; // default export..