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

FA

(40)
20221125 ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ [๊ฐ€์šด๋ฐ ๊ธ€์ž ๊ฐ€์ ธ์˜ค๊ธฐ] ๐Ÿ‘จ‍๐Ÿซ ๊ฐ€์šด๋ฐ ๊ธ€์ž ๊ฐ€์ ธ์˜ค๊ธฐ ๋ฌธ์ œ ์„ค๋ช… ๋‹จ์–ด s์˜ ๊ฐ€์šด๋ฐ ๊ธ€์ž๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜, solution์„ ๋งŒ๋“ค์–ด ๋ณด์„ธ์š”. ๋‹จ์–ด์˜ ๊ธธ์ด๊ฐ€ ์ง์ˆ˜๋ผ๋ฉด ๊ฐ€์šด๋ฐ ๋‘๊ธ€์ž๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ์ œํ•œ ์‚ฌํ•ญ s๋Š” ๊ธธ์ด๊ฐ€ 1 ์ด์ƒ, 100์ดํ•˜์ธ ์ŠคํŠธ๋ง์ž…๋‹ˆ๋‹ค. ๐Ÿ™† function solution(s) { var answer = ''; if (s.length % 2 == 0 ) { // ์ง์ˆ˜์ผ ๊ฒฝ์šฐ, answer = s[s.length / 2 - 1] + s[s.length / 2]; } else { answer = s[Math.floor(s.length/2)]; // ํ™€์ˆ˜์ผ ๊ฒฝ์šฐ, ๋ฐ˜๋‚ด๋ฆผ ํ•˜๊ธฐ } return answer; }
20221123 ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ [์ฝœ๋ผ์ธ  ์ถ”์ธก] ๐Ÿ‘จ‍๐Ÿซ ์ฝœ๋ผ์ธ  ์ถ”์ธก ๋ฌธ์ œ ์„ค๋ช… 1937๋…„ Collatz๋ž€ ์‚ฌ๋žŒ์— ์˜ํ•ด ์ œ๊ธฐ๋œ ์ด ์ถ”์ธก์€, ์ฃผ์–ด์ง„ ์ˆ˜๊ฐ€ 1์ด ๋  ๋•Œ๊นŒ์ง€ ๋‹ค์Œ ์ž‘์—…์„ ๋ฐ˜๋ณตํ•˜๋ฉด, ๋ชจ๋“  ์ˆ˜๋ฅผ 1๋กœ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค๋Š” ์ถ”์ธก์ž…๋‹ˆ๋‹ค. ์ž‘์—…์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. 1-1. ์ž…๋ ฅ๋œ ์ˆ˜๊ฐ€ ์ง์ˆ˜๋ผ๋ฉด 2๋กœ ๋‚˜๋ˆ•๋‹ˆ๋‹ค. 1-2. ์ž…๋ ฅ๋œ ์ˆ˜๊ฐ€ ํ™€์ˆ˜๋ผ๋ฉด 3์„ ๊ณฑํ•˜๊ณ  1์„ ๋”ํ•ฉ๋‹ˆ๋‹ค. 2. ๊ฒฐ๊ณผ๋กœ ๋‚˜์˜จ ์ˆ˜์— ๊ฐ™์€ ์ž‘์—…์„ 1์ด ๋  ๋•Œ๊นŒ์ง€ ๋ฐ˜๋ณตํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์ฃผ์–ด์ง„ ์ˆ˜๊ฐ€ 6์ด๋ผ๋ฉด 6 → 3 → 10 → 5 → 16 → 8 → 4 → 2 → 1 ์ด ๋˜์–ด ์ด 8๋ฒˆ ๋งŒ์— 1์ด ๋ฉ๋‹ˆ๋‹ค. ์œ„ ์ž‘์—…์„ ๋ช‡ ๋ฒˆ์ด๋‚˜ ๋ฐ˜๋ณตํ•ด์•ผ ํ•˜๋Š”์ง€ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜, solution์„ ์™„์„ฑํ•ด ์ฃผ์„ธ์š”. ๋‹จ, ์ฃผ์–ด์ง„ ์ˆ˜๊ฐ€ 1์ธ ๊ฒฝ์šฐ์—๋Š” 0์„, ์ž‘์—…์„ 500๋ฒˆ ๋ฐ˜๋ณตํ•  ๋•Œ๊นŒ์ง€ 1์ด ๋˜์ง€ ์•Š๋Š”๋‹ค๋ฉด –1์„ ๋ฐ˜ํ™˜ํ•ด ์ฃผ์„ธ..
20221122 ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ [ํ•˜์ƒค๋“œ ์ˆ˜] ๐Ÿ‘จ‍๐Ÿซ ํ•˜์ƒค๋“œ ์ˆ˜ ๋ฌธ์ œ ์„ค๋ช… ์ •์ˆ˜ x๊ฐ€ ํ•˜์ƒค๋“œ ์ˆ˜์ด๋ ค๋ฉด x์˜ ์ž๋ฆฟ์ˆ˜์˜ ํ•ฉ์œผ๋กœ x๊ฐ€ ๋‚˜๋ˆ„์–ด์ ธ์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด 18์˜ ์ž๋ฆฟ์ˆ˜ ํ•ฉ์€ 1+8=9์ด๊ณ , 18์€ 9๋กœ ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€๋ฏ€๋กœ 18์€ ํ•˜์ƒค๋“œ ์ˆ˜์ž…๋‹ˆ๋‹ค. ์ž์—ฐ์ˆ˜ x๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ x๊ฐ€ ํ•˜์ƒค๋“œ ์ˆ˜์ธ์ง€ ์•„๋‹Œ์ง€ ๊ฒ€์‚ฌํ•˜๋Š” ํ•จ์ˆ˜, solution์„ ์™„์„ฑํ•ด์ฃผ์„ธ์š”. ์ œํ•œ ์กฐ๊ฑด x๋Š” 1 ์ด์ƒ, 10000 ์ดํ•˜์ธ ์ •์ˆ˜์ž…๋‹ˆ๋‹ค. ๐Ÿ™† 1. x๋ฅผ split()์„ ์‚ฌ์šฉํ•ด ์ž๋ฆฟ์ˆ˜๋กœ ๋‚˜๋ˆ” 2. for๋ฌธ์„ ๋Œ๋ ค ๋‚˜๋ˆˆ ์ž๋ฆฟ์ˆ˜๋“ค์„ ๋”ํ•ด์คŒ 3. x์™€ ๋”ํ•œ ๊ฐ’์„ ๋‚˜๋ˆ„์–ด ๋ฐ˜ํ™˜๋˜๋Š” ๋‚˜๋จธ์ง€๋ฅผ ํŒ๋ณ„ํ•ด ์กฐ๊ฑด์— ๋”ฐ๋ผ ์ถœ๋ ฅํ•จ function solution(x) { // x = 18 var sum = 0; var arr = String(x).split(""); // [1,8] for(let i=0; i
20221121 ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ [์ •์ˆ˜ ์ œ๊ณฑ๊ทผ ํŒ๋ณ„] ๐Ÿ‘จ‍๐Ÿซ ์ •์ˆ˜ ์ œ๊ณฑ๊ทผ ํŒ๋ณ„ ๋ฌธ์ œ ์„ค๋ช… ์ž„์˜์˜ ์–‘์˜ ์ •์ˆ˜ n์— ๋Œ€ํ•ด, n์ด ์–ด๋–ค ์–‘์˜ ์ •์ˆ˜ x์˜ ์ œ๊ณฑ์ธ์ง€ ์•„๋‹Œ์ง€ ํŒ๋‹จํ•˜๋ ค ํ•ฉ๋‹ˆ๋‹ค. n์ด ์–‘์˜ ์ •์ˆ˜ x์˜ ์ œ๊ณฑ์ด๋ผ๋ฉด x+1์˜ ์ œ๊ณฑ์„ ๋ฆฌํ„ดํ•˜๊ณ , n์ด ์–‘์˜ ์ •์ˆ˜ x์˜ ์ œ๊ณฑ์ด ์•„๋‹ˆ๋ผ๋ฉด -1์„ ๋ฆฌํ„ดํ•˜๋Š” ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•˜์„ธ์š”. ์ œํ•œ ์‚ฌํ•ญ n์€ 1์ด์ƒ, 50000000000000 ์ดํ•˜์ธ ์–‘์˜ ์ •์ˆ˜์ž…๋‹ˆ๋‹ค. ๐Ÿ™† 1. ์ œ๊ณฑ๊ทผ์„ ๊ตฌํ•˜๋Š” ๋ฉ”์„œ๋“œ๋ฅผ ์ด์šฉํ•ด์„œ ์ œ๊ณฑ๊ทผ์ด ๋  ๋•Œ์™€ ์•„๋‹ ๋•Œ๋ฅผ ๋ถ„๊ธฐํ™” 2. ์ˆซ์ž์— ๋ฃจํŠธ๋ฅผ ์”Œ์›Œ์ฃผ๋Š” Math.sqrt ์‚ฌ์šฉ 3. 1์„ ํ–ˆ์„ ๋•Œ ๋‚˜๋จธ์ง€๊ฐ€ 0์ด ๋‚˜์˜ค๋Š”์ง€ ์†Œ์ˆ˜์ ์ด ๋‚จ๋Š”์ง€๋ฅผ ํŒ๋‹จํ•˜์—ฌ 4. ์–‘์˜ ์ •์ˆ˜์˜ ์ œ๊ณฑ๊ทผ์ธ์ง€ ์•„๋‹Œ์ง€๋ฅผ ํŒ๋‹จ function solution(n) { if(Math.sqrt(n) % 1 !=0){ return -1; }else{ return(..
20221119 ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ [์ œ์ผ ์ž‘์€ ์ˆ˜ ์ œ๊ฑฐํ•˜๊ธฐ] ๐Ÿ‘จ‍๐Ÿซ ์ œ์ผ ์ž‘์€ ์ˆ˜ ์ œ๊ฑฐํ•˜๊ธฐ ๋ฌธ์ œ ์„ค๋ช… ์ •์ˆ˜๋ฅผ ์ €์žฅํ•œ ๋ฐฐ์—ด, arr ์—์„œ ๊ฐ€์žฅ ์ž‘์€ ์ˆ˜๋ฅผ ์ œ๊ฑฐํ•œ ๋ฐฐ์—ด์„ ๋ฆฌํ„ดํ•˜๋Š” ํ•จ์ˆ˜, solution์„ ์™„์„ฑํ•ด์ฃผ์„ธ์š”. ๋‹จ, ๋ฆฌํ„ดํ•˜๋ ค๋Š” ๋ฐฐ์—ด์ด ๋นˆ ๋ฐฐ์—ด์ธ ๊ฒฝ์šฐ์—” ๋ฐฐ์—ด์— -1์„ ์ฑ„์›Œ ๋ฆฌํ„ดํ•˜์„ธ์š”. ์˜ˆ๋ฅผ๋“ค์–ด arr์ด [4,3,2,1]์ธ ๊ฒฝ์šฐ๋Š” [4,3,2]๋ฅผ ๋ฆฌํ„ด ํ•˜๊ณ , [10]๋ฉด [-1]์„ ๋ฆฌํ„ด ํ•ฉ๋‹ˆ๋‹ค.์ œํ•œ ์กฐ๊ฑด arr์€ ๊ธธ์ด 1 ์ด์ƒ์ธ ๋ฐฐ์—ด์ž…๋‹ˆ๋‹ค. ์ธ๋ฑ์Šค i, j์— ๋Œ€ํ•ด i ≠ j์ด๋ฉด arr[i] ≠ arr[j] ์ž…๋‹ˆ๋‹ค. ๐Ÿ™† ์ฃผ์–ด์ง„ ์ •์ˆ˜ ๋ฐฐ์—ด์—์„œ ๊ฐ€์žฅ ์ž‘์€ ์ˆ˜๋ฅผ ์ œ๊ฑฐ ๋ฐฐ์—ด์—์„œ ๊ฐ€์žฅ ์ž‘์€ ์ˆ˜๋ฅผ ์ฐพ๋Š” Math.min ๋ฉ”์„œ๋“œ ์ด์šฉ, ๊ทผ๋ฐ ๋ฐฐ์—ด์€ ๋ฐ›์ง€ ๋ชปํ•˜๋ฏ€๋กœ ๋ฐฐ์—ด์„ ํ’€์–ด์ค˜์•ผํ•จ Math.min ๋ฉ”์„œ๋“œ๋ฅผ ์ด์šฉํ•ด ๋ฐฐ์—ด์—์„œ ๊ฐ€์žฅ ์ž‘์€ ์ˆ˜๋ฅผ ๊ตฌํ•ด์ฃผ๊ณ , indexOf ๋ฉ”์„œ๋“œ๋ฅผ ํ†ตํ•ด ๊ฐ€์žฅ ..
20221118 ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ [์ •์ˆ˜ ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ๋ฐฐ์น˜ํ•˜๊ธฐ] ๐Ÿ‘จ‍๐Ÿซ ์ •์ˆ˜ ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ๋ฐฐ์น˜ํ•˜๊ธฐ ๋ฌธ์ œ ์„ค๋ช… ํ•จ์ˆ˜ solution์€ ์ •์ˆ˜ n์„ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ž…๋ ฅ๋ฐ›์Šต๋‹ˆ๋‹ค. n์˜ ๊ฐ ์ž๋ฆฟ์ˆ˜๋ฅผ ํฐ๊ฒƒ๋ถ€ํ„ฐ ์ž‘์€ ์ˆœ์œผ๋กœ ์ •๋ ฌํ•œ ์ƒˆ๋กœ์šด ์ •์ˆ˜๋ฅผ ๋ฆฌํ„ดํ•ด์ฃผ์„ธ์š”. ์˜ˆ๋ฅผ๋“ค์–ด n์ด 118372๋ฉด 873211์„ ๋ฆฌํ„ดํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ์ œํ•œ ์กฐ๊ฑด n์€ 1์ด์ƒ 8000000000 ์ดํ•˜์ธ ์ž์—ฐ์ˆ˜์ž…๋‹ˆ๋‹ค. ๐Ÿ™† parseInt() : ๋ฌธ์ž์—ด์„ ์ˆซ์ž(์ •์ˆ˜)๋กœ ๋ณ€ํ™˜ ํ•ด์ฃผ๋Š” ํ•จ์ˆ˜ toString() : ๊ฐ ์ž๋ฆฌ์ˆ˜์˜ ์ˆซ์ž๋ฅผ ๊ฐ๊ฐ ๋ณด๊ธฐ ์œ„ํ•ด ์ˆซ์ž๋ฅผ ๋ฌธ์ž์—ด๋กœ ๋ณ€ํ™˜ ํ•ด์ฃผ๋Š” ํ•จ์ˆ˜ split("") : ๊ฐ ์ž๋ฆฌ์ˆ˜๋งˆ๋‹ค ์ชผ๊ฐœ์„œ ๋ฐฐ์—ด์— ๋‹ด์•„์ฃผ๋Š” ํ•จ์ˆ˜ sort((a,b)=>{return b-a}) : ๋‚ด๋ฆผ์ฐจ์ˆœ ํ•ด์ฃผ๋Š” ํ•จ์ˆ˜ join("") : ๋ฐฐ์—ด์˜ ๋ชจ๋“  ์š”์†Œ๋ฅผ ์—ฐ๊ฒฐํ•ด์„œ ํ•˜๋‚˜์˜ ๋ฌธ์ž์—ด๋กœ ๋งŒ๋“ฌ ์ˆซ์ž๋ฅผ ๋ฌธ์ž๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ์ž˜๋ผ์„œ ๋ฐฐ..
20221117 ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ [์ง์ˆ˜์™€ ํ™€์ˆ˜] ๐Ÿ‘จ‍๐Ÿซ ์ง์ˆ˜์™€ ํ™€์ˆ˜ ๋ฌธ์ œ ์„ค๋ช… ์ •์ˆ˜ num์ด ์ง์ˆ˜์ผ ๊ฒฝ์šฐ "Even"์„ ๋ฐ˜ํ™˜ํ•˜๊ณ  ํ™€์ˆ˜์ธ ๊ฒฝ์šฐ "Odd"๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜, solution์„ ์™„์„ฑํ•ด์ฃผ์„ธ์š”. ์ œํ•œ ์กฐ๊ฑด num์€ int ๋ฒ”์œ„์˜ ์ •์ˆ˜์ž…๋‹ˆ๋‹ค. 0์€ ์ง์ˆ˜์ž…๋‹ˆ๋‹ค. ๐Ÿ™† ํ”„๋กœ์ ํŠธํ•˜๋ฉด์„œ ์‚ผํ•ญ์—ฐ์‚ฐ์ž๋ฅผ ๊ณ„์† ์‚ฌ์šฉํ–ˆ๋”๋‹ˆ ๊ทธ๋‚˜๋งˆ ์ด ๋ฌธ์ œ๋Š” ์‰ฝ๊ฒŒ ํ’€์–ด ๋ณผ ์ˆ˜ ์žˆ์—ˆ๋‹ค. function solution(num) { return (num % 2 === 0? "Even":"Odd") //์‚ผํ•ญ์—ฐ์‚ฐ์ž๋ฅผ ์‚ฌ์šฉํ•ด์„œ ํ’€๋ฉด ๋Œ! }
20221116 ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ [์„œ์šธ์—์„œ ๊น€์„œ๋ฐฉ ์ฐพ๊ธฐ] ๐Ÿ‘จ‍๐Ÿซ ์„œ์šธ์—์„œ ๊น€์„œ๋ฐฉ ์ฐพ๊ธฐ ๋ฌธ์ œ ์„ค๋ช… Stringํ˜• ๋ฐฐ์—ด seoul์˜ element์ค‘ "Kim"์˜ ์œ„์น˜ x๋ฅผ ์ฐพ์•„, "๊น€์„œ๋ฐฉ์€ x์— ์žˆ๋‹ค"๋Š” String์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜, solution์„ ์™„์„ฑํ•˜์„ธ์š”. seoul์— "Kim"์€ ์˜ค์ง ํ•œ ๋ฒˆ๋งŒ ๋‚˜ํƒ€๋‚˜๋ฉฐ ์ž˜๋ชป๋œ ๊ฐ’์ด ์ž…๋ ฅ๋˜๋Š” ๊ฒฝ์šฐ๋Š” ์—†์Šต๋‹ˆ๋‹ค. ์ œํ•œ ์‚ฌํ•ญ seoul์€ ๊ธธ์ด 1 ์ด์ƒ, 1000 ์ดํ•˜์ธ ๋ฐฐ์—ด์ž…๋‹ˆ๋‹ค. seoul์˜ ์›์†Œ๋Š” ๊ธธ์ด 1 ์ด์ƒ, 20 ์ดํ•˜์ธ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. "Kim"์€ ๋ฐ˜๋“œ์‹œ seoul ์•ˆ์— ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ๐Ÿ™† ๋ฐฐ์—ด ์•ˆ ํ•ญ๋ชฉ์˜ ์ธ๋ฑ์Šค ์ฐพ๊ธฐ indexOf function solution(seoul) { let answer = seoul.indexOf("Kim"); return "๊น€์„œ๋ฐฉ์€ " + answer + "์— ์žˆ๋‹ค"; }