๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

์ „์ฒด ๊ธ€83

[BOJ/1254] ํŒฐ๋ฆฐ๋“œ๋กฌ ๋งŒ๋“ค๊ธฐ (๋ฌธ์ž์—ด) ๋ฐฑ์ค€ ํŒฐ๋ฆฐ๋“œ๋กฌ ๋งŒ๋“ค๊ธฐ ๋ฌธ์ž์—ด ๋ฌธ์ œ ๊ต‰์žฅํžˆ ๊ฐ„๋‹จํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ๋Š”๋ฐ ํ’€๋•Œ๋งˆ๋‹ค ๋ญ”๊ฐ€ ๊ณ„์† ์‹œ๊ฐ„์ด ๊ฑธ๋ฆฌ๊ณ  ๋ง‰ํžŒ๋‹ค. ๊ทธ๋ž˜์„œ ๋‚ด๊ฐ€ ๊ฒช์—ˆ๋˜ ์‹œํ–‰์ฐฉ์˜ค๋“ค์ด ์žฌ๋ฐœํ•˜์ง€ ์•Š๊ธฐ ์œ„ํ•ด ์ ์–ด๋†“๊ณ  ๊ณ„์† ์ƒ๊ธฐ ์‹œ์ผœ์•ผ๊ฒ ๋‹ค. ํŒฐ๋ฆฐ๋“œ๋กฌ(Palindrome) ์•ž์—์„œ๋ถ€ํ„ฐ ์ฝ์œผ๋‚˜ ๋’ค์—์„œ๋ถ€ํ„ฐ ์ฝ์œผ๋‚˜ ๊ฐ™๊ฒŒ ์ฝํžˆ๋Š” ๋ฌธ์ž์—ด ์ ‘๊ทผ๋ฐฉ์‹ 1) ์ค‘๊ฐ„ ๊ธฐ์ค€์  ์ฐพ๊ธฐ ์ด๋ ‡๊ฒŒ ์ฒ˜์Œ๋ถ€ํ„ฐ ์ ‘๊ทผ์„ ํ–ˆ์—ˆ๋Š”๋ฐ ๋„์ €ํžˆ ์•ˆํ’€๋ฆฐ๋‹ค. ๋‚˜์ฒ˜๋Ÿผ ์ด๋ ‡๊ฒŒ ์‹œํ–‰์ฐฉ์˜ค๋ฅผ ๊ฒช์—ˆ๋˜ ๊ฒƒ ๊ฐ™์€ ๋ถ„์˜ ๋ธ”๋กœ๊ทธ๋ฅผ ๋ณด๊ณ  ์•„์ดค์ฐจ~์‹ถ์—ˆ๋‹ค. 2) ์›๋ณธ ๋ฌธ์ž์—ด์˜ ๊ธธ์ด๋งŒํผ ๋Œ€์นญ์ธ ๊ฒฝ์šฐ abab => abab | abab 3) ๋ฌธ์ž์—ด ๋งจ ์•ž๊ธ€์ž๋ถ€ํ„ฐ ์ตœ๋Œ€ํ•œ ์ ์€ ๊ธ€์ž๋งŒํผ ๋Œ€์นญ abab => a | bab | a ์ฒ˜์Œ์—๋Š” 1๋ฒˆ์œผ๋กœ๋ฐ–์— ์ƒ๊ฐ์„ ๋ชปํ–ˆ๋Š”๋ฐ 2,3๋ฒˆ์„ ๋ณด๊ณ  ๋‚˜๋‹ˆ ๋‚ด๊ฐ€ ์™„์ „ ์ž˜๋ชป ์ ‘๊ทผํ•˜๊ณ  ์žˆ์—ˆ๊ตฌ๋‚˜ ์‹ถ์—ˆ๋‹ค. 3๋ฒˆ ์ ‘๊ทผ.. 2023. 9. 13.
2023๋…„ ์ƒ๋ฐ˜๊ธฐ๊ฐ€ ๋‹ค ์ง€๋‚˜๊ฐ€๋Š” ์‹œ์ ์—์„œ ์ž‘์„ฑํ•˜๋Š” ๋ธ”๋กœ๊ทธ์— ์“ธ ๊ฒƒ ๋ณดํ˜ธ๋˜์–ด ์žˆ๋Š” ๊ธ€ ์ž…๋‹ˆ๋‹ค. 2023. 5. 3.
react-query๋ฅผ ์งง๊ฒŒ ์‚ฌ์šฉํ•ด๋ณธ ํšŒ๊ณ ..๋ž„๊นŒ...? ์ง€๊ธˆ ์ง„ํ–‰ํ•˜๊ณ  ์žˆ๋Š” ํ”„๋กœ์ ํŠธ์—์„œ react-query์™€ recoil์„ ์‚ฌ์šฉํ•ด์„œ ์ƒํƒœ๊ด€๋ฆฌ๋ฅผ ํ•ด์ฃผ๊ณ ์žˆ๋‹ค. ๋ฌผ๋ก  ํ”„๋กœ์ ํŠธ๊ฐ€ ์•„์ง ๋๋‚˜์ง€ ์•Š์•˜๋‹คใ…Žใ…Ž.. ์‚ฌ์‹ค ์ž‘๋…„๊นŒ์ง€๋งŒ ํ•ด๋„ ์ฑ„์šฉ๊ณต๊ณ ๋‚˜ ๊ทธ๋Ÿฐ ๊ณณ๋“ค์— Redux๊ฐ€ ๊ฐ€๋“์ฐผ์—ˆ๋Š”๋ฐ ์–ด๋Š ์ˆœ๊ฐ„๋ถ€ํ„ด๊ฐ€ React-Query์˜ ์ ์œ ์œจ์ด ๋†’์•„์ง€๊ธฐ ์‹œ์ž‘ํ–ˆ๋‹ค. ๊ณต๋ถ€ํ•ด์•ผ์ง€..ํ•ด์•ผ์ง€..์ƒ๊ฐํ•˜๋‹ค๊ฐ€ ์‚ฌ์šฉํ•˜๊ณ ์žˆ๋Š” ํ”„๋กœ์ ํŠธ์— ์šฐ์—ฐํžˆ ๋“ค์–ด๊ฐ€๊ฒŒ ๋˜๋ฉด์„œ ํ•ด์•ผ๋งŒํ•˜๊ฒŒ ๋๋‹ค.. ๋ฆฌ์ฝ”์ผ์€ ์ด์ „์— ํ•™์Šตํ•ด๋ดค๋Š”๋ฐ ๋ฆฌ์•กํŠธ ์ฟผ๋ฆฌ๋Š” ์•ˆํ•ด๋ด์„œ ์‚ด์ง ๊ฒ์ด ๋‚ฌ์—ˆ๋‹ค ๊ทผ๋ฐ ์ง€๊ธˆ ํ•ด๋ณด๋‹ˆ ์ ์šฉํ•˜๊ณ  ์‚ฌ์šฉํ•˜๋Š” ๋ฐ์— ์žˆ์–ด์„œ๋Š” ํฌ๊ฒŒ ์–ด๋ ต์ง€ ์•Š์œผ๋‹ˆ ๋‚˜์ฒ˜๋Ÿผ ๊ฒ๋จน์€ ์‚ฌ๋žŒ์ด ์žˆ๋‹ค๋ฉด ์ผ๋‹จ ํ•ด๋ณด๋ผ๊ณ  ๋งํ•˜๊ณ  ์‹ถ๋‹ค. ์ผ๋‹จ ๋„๋Œ€์ฒด ์š”์ฆ˜ ์™œ ๋‹ค ๋ฆฌ์•กํŠธ ์ฟผ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฑด์ง€์— ๋Œ€ํ•œ ์˜๋ฌธ์ด ๋“ค์—ˆ์—ˆ๋‹ค. ์ดํ•ดํ•ด๋ณด๋ ค๊ณ  ์ž๋ฃŒ๋ฅผ ๋งŽ์ด ์ฐพ์•„๋ดค๋Š”๋ฐ ์ž๋ฃŒ๋„ ์ž๋ฃŒ์ง€๋งŒ ์ง์ ‘.. 2023. 4. 4.
[python]Counter ๊ด€๋ จ ๋ฉ”์†Œ๋“œ 1. collections.Counter().elements() c = Counter(a=4, b=2, c=0, d=-2) print(c.elements()) >>>['a', 'a', 'a', 'a', 'b', 'b'] 2. collections.Counter().most_common(n) ์ธ์ž๋กœ ๋“ค์–ด๊ฐ€๋Š” n์€ ์ถœ๋ ฅํ•˜๊ณ ์ž ํ•˜๋Š” ์›์†Œ์˜ ๊ฐœ์ˆ˜๋ฅผ ์˜๋ฏธํ•œ๋‹ค. ์•„๋ž˜์—์„œ๋Š” 3์„ ์ž…๋ ฅํ•˜์—ฌ ๊ฐ€์žฅ ๋งŽ์ด ์–ธ๊ธ‰๋œ ์›์†Œ 3๊ฐœ์— ๋Œ€ํ•œ ์นด์šดํŒ… ์ •๋ณด๋ฅผ ์ถœ๋ ฅํ–ˆ๋‹ค. Counter('abracadabra').most_common(3) [('a', 5), ('b', 2), ('r', 2)] 3. collections.Counter().subtract(๋‹ค๋ฅธ counter) ์„œ๋กœ ๋‹ค๋ฅธ ๋‘๊ฐœ์˜ Counter์˜ ๊ฐ’์„ ๋นผ๋Š” ํ˜•ํƒœ์ด๋‹ค. c = Co.. 2022. 12. 12.
SLASH 22 - Effective Component ์ง€์† ๊ฐ€๋Šฅํ•œ ์„ฑ์žฅ๊ณผ ์ปดํฌ๋„ŒํŠธ ์š”์ฆ˜ ๊ต์œก์— ์ข€ ๋” ์ง‘์ค‘ํ•˜๋Š๋ผ ๊ฐœ๋ฐœ์ด๋‚˜ ๋ธ”๋กœ๊ทธ ์ •๋ฆฌ์— ๋งŽ์ด ์‹œ๊ฐ„์„ ๋ชป์ผ๋‹ค,, ๊ทธ๋ž˜์„œ ๋ญ”๊ฐ€ ๋จธ๋ฆฌ ์›Œ๋ฐ์—…ํ• ๊ฒธ ํ† ์Šค ์ปจํผ๋Ÿฐ์Šค์˜์ƒ์„ ๋ณด๋ฉด์„œ ์ •๋ฆฌํ•ด๋ด์•ผ๊ฒ ๋‹ค๊ณ  ๋งˆ์Œ์„ ๋จน๊ณ  ๊ทธ๋Ÿฌ๊ณ  ์žˆ๋Š” ์ค‘์ด๋‹ค.. ์‚ฌ์‹ค ํ•œ๋ฒˆ ์‹ธ์•… ๋ณด๊ณ  ๋‹ค์‹œ ๋ณด๋ฉด์„œ ์ •๋ฆฌํ•˜๋ ค๊ณ  ํ•˜๋Š”๋ฐ ์ด๋ฏธ ํ•œ๋ฒˆ ๋ดค๋Š”๋ฐ ๋„ˆ์–ด์–ด์–ด์–ด๋ฌด ๋„์›€์ด ๋˜๊ณ  ๋ญ”๊ฐ€ ์•ฝ๊ฐ„ ์œ„๋กœ๋ฐ›๋Š” ๋Š๋‚Œ์˜ ๋ฐœํ‘œ์—ฌ์„œ ์ด๋ ‡๊ฒŒ ๊ธฐ๋กํ•ด๋†“๊ฒŒ ๋˜์—ˆ๋‹ค. https://www.youtube.com/watch?v=fR8tsJ2r7Eg ํ† ์Šคใ…ฃSLASH 22 - Effective Component ์ง€์† ๊ฐ€๋Šฅํ•œ ์„ฑ์žฅ๊ณผ ์ปดํฌ๋„ŒํŠธ๋ฅผ ๋ณด๊ณ  ์ž‘์„ฑํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค. ์ •๋ณด์„ฑ ๊ธ€์ด ์•„๋‹ˆ๋ผ ๋‚ด๊ฐ€ ๋ณด๋ ค๊ณ  ์ •๋ฆฌํ•˜๋Š” ๊ธ€์ด๋ผ ๋‘์„œ๊ฐ€ ์—†์„ ๊ฒƒ์ด๋‹ค.. ์˜์‹์˜ ํ๋ฆ„์ฃผ์˜..๐Ÿซฅ ํ”„๋กœ์ ํŠธ๋ฅผ ํ•˜๋‹ค๋ณด๋ฉด ์Šคํ”„๋ฆฐํŠธ ์ˆ˜์ •์‚ฌํ•ญ์ด ๊ณ„์† ๋ฐœ์ƒํ•˜๋Š” ๊ฒƒ,,, ์š”์ฆ˜ ๋„ˆ๋ฌด๋„ˆ๋ฌด๋„ˆ๋ฌด ๋งŽ์ด.. 2022. 11. 1.
๋ฆฌ์•กํŠธ์—์„œ setState๋ฅผ ํ†ตํ•ด์„œ state๋ฅผ ๋ณ€๊ฒฝํ•ด์ฃผ๋Š” ์ด์œ  / setState์˜ ๋น„๋™๊ธฐ์„ฑ ๋ฆฌ์•กํŠธ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด์„œ ์ฒ˜์Œ์—๋Š” ์—†๋˜ ์˜๋ฌธ์ด ๊ฐ‘์ž๊ธฐ ์ƒ๊ฒผ์—ˆ๋‹ค. ์™œ ๋ฆฌ์•กํŠธ๋Š” useState๋ผ๋Š” ํ›…์„ ์‚ฌ์šฉํ•ด์„œ ์ƒํƒœ๊ด€๋ฆฌ๋ฅผ ํ•˜๋Š”๊ฒƒ์ธ๊ฐ€ ๋ฌผ๋ก  ํ›…์„ ์‚ฌ์šฉํ•ด์„œ ๋ผ์ดํ”„์‚ฌ์ดํด์„ ์กฐ์ž‘ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•˜์—ฌ ๋ถˆํ•„์š”ํ•œ ๋ฆฌ๋ Œ๋”๋ง์„ ๋ง‰์•„์ฃผ๊ณ , ๋‚ด๊ฐ€ ์›ํ•˜๋Š” ์‹œ์ ์— ์›ํ•˜๋Š” ๋™์ž‘์„ ํ•˜๋„๋ก ๋งŒ๋“ค์–ด์ฃผ๋Š” ๊ฒƒ์ผ ๊ฑฐ๋‹ค. ํ•˜์ง€๋งŒ, ์™œ!! ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ ๋ณ€์ˆ˜ ์‚ฌ์šฉํ•˜๋“ฏ์ด ์‚ฌ์šฉํ•˜๋ฉด ์•ˆ๋˜๋Š”๊ฒƒ์ด๋ƒ ์ด๊ฒŒ ๋ฌธ๋“ ๊ถ๊ธˆํ•ด์กŒ๋‹ค ์ด์œ  state๋Š” immutable(๋ถˆ๋ณ€์„ฑ)์„ ์œ ์ง€ํ•ด์•ผํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ์ปดํฌ๋„ŒํŠธ๋Š” ํ˜„์žฌ์˜ this.state์™€ setState๋ฅผ ๋น„๊ตํ•ด์„œ ์—…๋ฐ์ดํŠธ๊ฐ€ ํ•„์š”ํ•œ ๊ฒฝ์šฐ์—๋งŒ render ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•˜๋Š”๋ฐ, state๋ฅผ ์ง์ ‘ ์ˆ˜์ •ํ•˜๊ฒŒ ๋˜๋ฉด ๋ฆฌ์•กํŠธ๊ฐ€ render ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•˜์ง€ ์•Š์•„ ์ƒํƒœ ๋ณ€๊ฒฝ์ด ์ผ์–ด๋‚˜๋„ ๋ Œ๋”๋ง์ด ์ผ์–ด๋‚˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ๋‹ค. ์ƒํƒœ ๋ณ€๊ฒฝ์„ ์ถ”์ ํ•˜.. 2022. 10. 21.
๋ฐ˜์‘ํ˜•