λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°

ν”„μ—” 곡뢀

(151)
[μ•Œκ³ λ¦¬μ¦˜ || ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€] μˆ˜μ—΄κ³Ό ꡬ간 쿼리3 function solution(arr, queries) { let result = [...arr]; queries.map(indexes => { const i1 = indexes[0]; const i2 = indexes[1]; result[i1] = arr[i2]; result[i2] = arr[i1]; arr = [...result]; }) return result; } 음.. μ™œ 늘 μ•„λž˜κ°™μ€ 방법이 생각이 μ•ˆλ‚ κΉŒ? function solution(arr, queries) { queries.forEach( ([a,b]) => { [arr[a],arr[b]] = [arr[b],arr[a]]; }) return arr; }
[μ•Œκ³ λ¦¬μ¦˜ || ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€] 이진 λ³€ν™˜ λ°˜λ³΅ν•˜κΈ° https://school.programmers.co.kr/learn/courses/30/lessons/70129 ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€ μ½”λ“œ μ€‘μ‹¬μ˜ 개발자 μ±„μš©. μŠ€νƒ 기반의 ν¬μ§€μ…˜ 맀칭. ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€μ˜ 개발자 λ§žμΆ€ν˜• ν”„λ‘œν•„μ„ λ“±λ‘ν•˜κ³ , λ‚˜μ™€ 기술 ꢁ합이 잘 λ§žλŠ” 기업듀을 맀칭 λ°›μœΌμ„Έμš”. programmers.co.kr function solution(s) { let zero = 0; let count = 0; while (s !== "1") { zero += s.split("1").join("").length; s = s.split("0").join("").length.toString(2); count++; } return [count, zero]; } μ–΄λ–»κ²Œ ν•˜λ©΄ μ΅œλŒ€ν•œ ν˜•λ³€ν™˜μ„ μ•ˆμ‹œν‚€κ³  λ§Œλ“€ 수 μžˆμ„κΉŒ ν•˜λ‹€..
[μ•Œκ³ λ¦¬μ¦˜ || ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€] 두 μ •μˆ˜ μ‚¬μ΄μ˜ ν•© 두 μ •μˆ˜ μ‚¬μ΄μ˜ 합을 κ΅¬ν•˜λŠ” 곡식이 μžˆλ‹€. 두 μ •μˆ˜ x, y κ°€ 있고 y κ°€ 더 큰 수라면 n(x+y)/2 μ—¬κΈ°μ„œ n 은 x, y 사이에 μžˆλŠ” μˆ˜λ“€μ˜ 개수λ₯Ό λ‚˜νƒ€λ‚Έλ‹€. (y-x+1)*(x+y)/2 κ·ΈλŸ¬λ‹ˆ μ΄λ ‡κ²Œ μ“Έ μˆ˜λ„ μžˆλ‹€. function solution(a, b) { if (a === b) return a; return a < b ? (b - a + 1) * (a + b) / 2 : (a - b + 1) * (a + b) / 2 } λ¨Όμ € a, b의 값이 κ°™λ‹€λ©΄ λ‘˜ 쀑 μ•„λ¬΄κ±°λ‚˜ return ν•œλ‹€. μ•„λ‹ˆλΌλ©΄, 곡식을 μ΄μš©ν•œ 값을 return. Math.max 와 Math.min 을 μ“ΈκΉŒ ν•˜λ‹€κ°€ 더 λ‹¨μˆœν•˜κ²Œ 풀어보고 μ‹Άμ–΄μ„œ μ‚Όν•­μ—°μ‚°μžλ₯Ό μ΄μš©ν–ˆλ‹€.
[μ•Œκ³ λ¦¬μ¦˜ || ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€] 🐿️ μŠ€νƒ/큐 : μ˜¬λ°”λ₯Έ κ΄„ν˜Έ + 처음 λ§Œλ‚œ 'νš¨μœ¨μ„± ν…ŒμŠ€νŠΈ' μ•Œκ³ λ¦¬μ¦˜ μŠ€ν„°λ””μ—μ„œ 같이 ν‘Ό 문제인데, 처음으둜 νš¨μœ¨μ„± ν…ŒμŠ€νŠΈλΌλŠ” 친ꡬλ₯Ό λ°œκ²¬ν–ˆλ‹€. //(❌) function solution(s) { if (s.length < 1) return false; if (s.startsWith(")")) { return false; } while (s.includes("()")) { s = s.replaceAll("()", "") } return s == "" ? true : false; } 이 μ½”λ“œλŠ” 처음 μž‘μ„±ν–ˆλ˜ μ½”λ“œμΈλ°, ν…ŒμŠ€νŠΈ μžμ²΄λŠ” ν†΅κ³Όν–ˆμ§€λ§Œ, νš¨μœ¨μ„± ν…ŒμŠ€νŠΈμ—μ„œ μ‹€νŒ¨ν–ˆλ‹€κ³  λ‚˜μ™”λ‹€. μƒˆλ‘œ λ§Œλ‚œ μ½”ν…Œμ˜ λ²½,,,, (μ •ν™•μ„± ν…ŒμŠ€νŠΈλŠ” μ˜ˆμ™Έ 처리λ₯Ό 잘 ν•΄μ£Όλ©΄ λœλ‹€) λΉ„λ‚œλ‹˜μ˜ 힌트λ₯Ό 가지고 μ΄λ ‡κ²Œ μ €λ ‡κ²Œ ν•œμ‹œκ°„ 정도λ₯Ό 슀무고개λ₯Ό ν•΄λ΄€λŠ”λ°, λ‚΄κ°€ ν•˜κ³  μ‹Άμ—ˆλ˜ λ°©μ‹μœΌλ‘œλŠ” λ„μ €νžˆ ..
[μ•Œκ³ λ¦¬μ¦˜ || ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€] μ •μˆ˜ 제곱근 νŒλ³„ λ‚˜μ˜ μ½”λ“œ function solution(n) { return Number.isInteger(Math.sqrt(n)) ? (Math.sqrt(n) + 1) ** 2 : -1; } sqrt λ₯Ό μ΄μš©ν•΄μ„œ μ œκ³±κ·Όμ„ κ΅¬ν•˜κ³  이게 integer λ©΄ κ·Έ λ’€μ˜ 계산을 λ°˜ν™˜ν•œλ‹€. μ •μˆ˜μΈμ§€ νŒλ³„ν•˜λŠ” λ‹€λ₯Έ 방법은 1둜 λ‚˜λˆ΄μ„ λ•Œ λ‚˜λ¨Έμ§€κ°€ 0이 λ˜λŠ”μ§€λ₯Ό ν™•μΈν•˜λŠ” 것이닀. Math.sqrt(n) % 1 == 0 λ„Ή? γ…Žγ„·γ„·... function solution(n) { return ((x) => Number.isInteger(x) ? (x + 1) ** 2 : -1)(Math.sqrt(n)) } 됐닀~~~ μ¦‰μ‹œ μ‹€ν–‰ν•¨μˆ˜ (()=>{})()
[μ•Œκ³ λ¦¬μ¦˜ || ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€] μ΅œλŒ“κ°’κ³Ό μ΅œμ†Ÿκ°’ split 으둜 λ‚˜λˆˆ λ’€, Number 둜 ν˜•λ³€ν™˜ν•΄μ„œ μ΅œλŒ€κ°’, μ΅œμ†Œκ°’μ„ κ΅¬ν–ˆλŠ”λ°, function solution(s) { const numArr = s.split(" ").map(Number) const max = Math.max(...numArr); const min = Math.min(...numArr); return `${min} ${max}` } μ•„λ‹ˆ 이게 뭐람 Math.min, Math.max λŠ” string 을 λ„£μœΌλ©΄ μ•Œμ•„μ„œ 숫자둜 λ³€ν™˜μ‹œν‚¨λ‹€. function solution(s) { const arr = s.split(' '); return Math.min(...arr)+' '+Math.max(...arr); } const solution = s => Math.min(...s.split("..
[μ•Œκ³ λ¦¬μ¦˜ || ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€] νŠΉλ³„ν•œ 이차원 λ°°μ—΄ 1 function solution(n) { const arr = new Array(n).fill(new Array(n).fill(0)); for (let i = 0; i < n; i++) { arr[i][i] = 1; } console.log(arr) } μ²˜μŒμ— fill 을 톡해 2차원 배열을 λ§Œλ“  ν›„, [i][i] 차원 μˆ˜κ°€ 같은 κ²ƒλ“€λ§Œ 1을 λ„£μ–΄μ£Όλ©΄ λ˜κ² λ‹€ 생각을 ν–ˆλŠ”λ° μ™ κ±Έ [ [ 1, 0, 0 ], [ 0, 1, 0 ], [ 0, 0, 1 ] ] 이 μ•„λ‹ˆλΌ [ [ 1, 1, 1 ], [ 1, 1, 1 ], [ 1, 1, 1 ] ] κ°€ λ‚˜μ˜΄ μ•— κ·Έλ ‡λ‹€,, 배열이 λœ»λŒ€λ‘œ μ•ˆλ˜λ©΄ 얕은 배열일 μˆ˜λ„ μžˆλ‹€λŠ” 생각을 λͺ»ν–ˆλ‹€. 즉, 2차원 배열이 각 μš”μ†Œλ‘œ 가지고 있던 [0,0,0] 이 λͺ¨λ‘ 같은 μ£Όμ†Œλ₯Ό μ°Έμ‘°ν•˜..
[ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€ level.0] νŠΉλ³„ν•œ 이차원 λ°°μ—΄ 2 γ…‹γ…‹γ…‹γ…‹γ…‹γ…‹γ…‹γ…‹γ…‹γ…‹γ…‹γ…‹γ…‹γ…‹γ…‹γ…‹γ…‹γ…‹γ…‹γ…‹γ…‹γ…‹γ…‹γ…‹γ…‹γ…‹γ…‹γ…‹γ…‹γ…‹γ…‹ 지 λ„ˆλ¬΄ 웃겨 function solution(arr) { for (let i = 0; i row.every((_, j) => arr[i][j] === arr[j][i])) ? 1 : 0; } μŠ€ν„°λ””μ—μ„œ λΉ…o 도 같이 μ“°λ©΄ 쒋을거 κ°™λ‹€ ν•˜μ…”μ„œ 같이 써보자! 근데 λΉ…O λŠ” μ–΄λ–»κ²Œ μ•Œ 수 μžˆλŠ”κ°€? https://holika...

728x90
λ°˜μ‘ν˜•