ํ‹ฐ์Šคํ† ๋ฆฌ ๋ทฐ

๋ฌธ์ œ

๋ฌธ์ œ ์„ค๋ช…

๋‰ด์Šค ํด๋Ÿฌ์Šคํ„ฐ๋ง

์—ฌ๋Ÿฌ ์–ธ๋ก ์‚ฌ์—์„œ ์Ÿ์•„์ง€๋Š” ๋‰ด์Šค, ํŠนํžˆ ์†๋ณด์„ฑ ๋‰ด์Šค๋ฅผ ๋ณด๋ฉด ๋น„์Šท๋น„์Šทํ•œ ์ œ๋ชฉ์˜ ๊ธฐ์‚ฌ๊ฐ€ ๋งŽ์•„ ์ •์ž‘ ํ•„์š”ํ•œ ๊ธฐ์‚ฌ๋ฅผ ์ฐพ๊ธฐ๊ฐ€ ์–ด๋ ต๋‹ค. Daum ๋‰ด์Šค์˜ ๊ฐœ๋ฐœ ์—…๋ฌด๋ฅผ ๋งก๊ฒŒ ๋œ ์‹ ์ž…์‚ฌ์› ํŠœ๋ธŒ๋Š” ์‚ฌ์šฉ์ž๋“ค์ด ํŽธ๋ฆฌํ•˜๊ฒŒ ๋‹ค์–‘ํ•œ ๋‰ด์Šค๋ฅผ ์ฐพ์•„๋ณผ ์ˆ˜ ์žˆ๋„๋ก ๋ฌธ์ œ์ ์„ ๊ฐœ์„ ํ•˜๋Š” ์—…๋ฌด๋ฅผ ๋งก๊ฒŒ ๋˜์—ˆ๋‹ค.

๊ฐœ๋ฐœ์˜ ๋ฐฉํ–ฅ์„ ์žก๊ธฐ ์œ„ํ•ด ํŠœ๋ธŒ๋Š” ์šฐ์„  ์ตœ๊ทผ ํ™”์ œ๊ฐ€ ๋˜๊ณ  ์žˆ๋Š” "์นด์นด์˜ค ์‹ ์ž… ๊ฐœ๋ฐœ์ž ๊ณต์ฑ„" ๊ด€๋ จ ๊ธฐ์‚ฌ๋ฅผ ๊ฒ€์ƒ‰ํ•ด๋ณด์•˜๋‹ค.

  • ์นด์นด์˜ค ์ฒซ ๊ณต์ฑ„..'๋ธ”๋ผ์ธ๋“œ' ๋ฐฉ์‹ ์ฑ„์šฉ
  • ์นด์นด์˜ค, ํ•ฉ๋ณ‘ ํ›„ ์ฒซ ๊ณต์ฑ„.. ๋ธ”๋ผ์ธ๋“œ ์ „ํ˜•์œผ๋กœ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ
  • ์นด์นด์˜ค, ๋ธ”๋ผ์ธ๋“œ ์ „ํ˜•์œผ๋กœ ์‹ ์ž… ๊ฐœ๋ฐœ์ž ๊ณต์ฑ„
  • ์นด์นด์˜ค ๊ณต์ฑ„, ์‹ ์ž… ๊ฐœ๋ฐœ์ž ์ฝ”๋”ฉ ๋Šฅ๋ ฅ๋งŒ ๋ณธ๋‹ค
  • ์นด์นด์˜ค, ์‹ ์ž… ๊ณต์ฑ„.. "์ฝ”๋”ฉ ์‹ค๋ ฅ๋งŒ ๋ณธ๋‹ค"
  • ์นด์นด์˜ค "์ฝ”๋”ฉ ๋Šฅ๋ ฅ๋งŒ์œผ๋กœ 2018 ์‹ ์ž… ๊ฐœ๋ฐœ์ž ๋ฝ‘๋Š”๋‹ค"

๊ธฐ์‚ฌ์˜ ์ œ๋ชฉ์„ ๊ธฐ์ค€์œผ๋กœ "๋ธ”๋ผ์ธ๋“œ ์ „ํ˜•"์— ์ฃผ๋ชฉํ•˜๋Š” ๊ธฐ์‚ฌ์™€ "์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ"์— ์ฃผ๋ชฉํ•˜๋Š” ๊ธฐ์‚ฌ๋กœ ๋‚˜๋‰˜๋Š” ๊ฑธ ๋ฐœ๊ฒฌํ–ˆ๋‹ค. ํŠœ๋ธŒ๋Š” ์ด๋“ค์„ ๊ฐ๊ฐ ๋ฌถ์–ด์„œ ๋ณด์—ฌ์ฃผ๋ฉด ์นด์นด์˜ค ๊ณต์ฑ„ ๊ด€๋ จ ๊ธฐ์‚ฌ๋ฅผ ์ฐพ์•„๋ณด๋Š” ์‚ฌ์šฉ์ž์—๊ฒŒ ์œ ์šฉํ•  ๋“ฏ์‹ถ์—ˆ๋‹ค.

์œ ์‚ฌํ•œ ๊ธฐ์‚ฌ๋ฅผ ๋ฌถ๋Š” ๊ธฐ์ค€์„ ์ •ํ•˜๊ธฐ ์œ„ํ•ด์„œ ๋…ผ๋ฌธ๊ณผ ์ž๋ฃŒ๋ฅผ ์กฐ์‚ฌํ•˜๋˜ ํŠœ๋ธŒ๋Š” "์ž์นด๋“œ ์œ ์‚ฌ๋„"๋ผ๋Š” ๋ฐฉ๋ฒ•์„ ์ฐพ์•„๋ƒˆ๋‹ค.

์ž์นด๋“œ ์œ ์‚ฌ๋„๋Š” ์ง‘ํ•ฉ ๊ฐ„์˜ ์œ ์‚ฌ๋„๋ฅผ ๊ฒ€์‚ฌํ•˜๋Š” ์—ฌ๋Ÿฌ ๋ฐฉ๋ฒ• ์ค‘์˜ ํ•˜๋‚˜๋กœ ์•Œ๋ ค์ ธ ์žˆ๋‹ค. ๋‘ ์ง‘ํ•ฉ A, B ์‚ฌ์ด์˜ ์ž์นด๋“œ ์œ ์‚ฌ๋„ J(A, B)๋Š” ๋‘ ์ง‘ํ•ฉ์˜ ๊ต์ง‘ํ•ฉ ํฌ๊ธฐ๋ฅผ ๋‘ ์ง‘ํ•ฉ์˜ ํ•ฉ์ง‘ํ•ฉ ํฌ๊ธฐ๋กœ ๋‚˜๋ˆˆ ๊ฐ’์œผ๋กœ ์ •์˜๋œ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด ์ง‘ํ•ฉ A = {1, 2, 3}, ์ง‘ํ•ฉ B = {2, 3, 4}๋ผ๊ณ  ํ•  ๋•Œ, ๊ต์ง‘ํ•ฉ A ∩ B = {2, 3}, ํ•ฉ์ง‘ํ•ฉ A ∪ B = {1, 2, 3, 4}์ด ๋˜๋ฏ€๋กœ, ์ง‘ํ•ฉ A, B ์‚ฌ์ด์˜ ์ž์นด๋“œ ์œ ์‚ฌ๋„ J(A, B) = 2/4 = 0.5๊ฐ€ ๋œ๋‹ค. ์ง‘ํ•ฉ A์™€ ์ง‘ํ•ฉ B๊ฐ€ ๋ชจ๋‘ ๊ณต์ง‘ํ•ฉ์ผ ๊ฒฝ์šฐ์—๋Š” ๋‚˜๋ˆ—์…ˆ์ด ์ •์˜๋˜์ง€ ์•Š์œผ๋‹ˆ ๋”ฐ๋กœ J(A, B) = 1๋กœ ์ •์˜ํ•œ๋‹ค.

์ž์นด๋“œ ์œ ์‚ฌ๋„๋Š” ์›์†Œ์˜ ์ค‘๋ณต์„ ํ—ˆ์šฉํ•˜๋Š” ๋‹ค์ค‘์ง‘ํ•ฉ์— ๋Œ€ํ•ด์„œ ํ™•์žฅํ•  ์ˆ˜ ์žˆ๋‹ค. ๋‹ค์ค‘์ง‘ํ•ฉ A๋Š” ์›์†Œ "1"์„ 3๊ฐœ ๊ฐ€์ง€๊ณ  ์žˆ๊ณ , ๋‹ค์ค‘์ง‘ํ•ฉ B๋Š” ์›์†Œ "1"์„ 5๊ฐœ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค๊ณ  ํ•˜์ž. ์ด ๋‹ค์ค‘์ง‘ํ•ฉ์˜ ๊ต์ง‘ํ•ฉ A ∩ B๋Š” ์›์†Œ "1"์„ min(3, 5)์ธ 3๊ฐœ, ํ•ฉ์ง‘ํ•ฉ A ∪ B๋Š” ์›์†Œ "1"์„ max(3, 5)์ธ 5๊ฐœ ๊ฐ€์ง€๊ฒŒ ๋œ๋‹ค. ๋‹ค์ค‘์ง‘ํ•ฉ A = {1, 1, 2, 2, 3}, ๋‹ค์ค‘์ง‘ํ•ฉ B = {1, 2, 2, 4, 5}๋ผ๊ณ  ํ•˜๋ฉด, ๊ต์ง‘ํ•ฉ A ∩ B = {1, 2, 2}, ํ•ฉ์ง‘ํ•ฉ A ∪ B = {1, 1, 2, 2, 3, 4, 5}๊ฐ€ ๋˜๋ฏ€๋กœ, ์ž์นด๋“œ ์œ ์‚ฌ๋„ J(A, B) = 3/7, ์•ฝ 0.42๊ฐ€ ๋œ๋‹ค.

์ด๋ฅผ ์ด์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด ์‚ฌ์ด์˜ ์œ ์‚ฌ๋„๋ฅผ ๊ณ„์‚ฐํ•˜๋Š”๋ฐ ์ด์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. ๋ฌธ์ž์—ด "FRANCE"์™€ "FRENCH"๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, ์ด๋ฅผ ๋‘ ๊ธ€์ž์”ฉ ๋Š์–ด์„œ ๋‹ค์ค‘์ง‘ํ•ฉ์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค. ๊ฐ๊ฐ {FR, RA, AN, NC, CE}, {FR, RE, EN, NC, CH}๊ฐ€ ๋˜๋ฉฐ, ๊ต์ง‘ํ•ฉ์€ {FR, NC}, ํ•ฉ์ง‘ํ•ฉ์€ {FR, RA, AN, NC, CE, RE, EN, CH}๊ฐ€ ๋˜๋ฏ€๋กœ, ๋‘ ๋ฌธ์ž์—ด ์‚ฌ์ด์˜ ์ž์นด๋“œ ์œ ์‚ฌ๋„ J("FRANCE", "FRENCH") = 2/8 = 0.25๊ฐ€ ๋œ๋‹ค.

์ž…๋ ฅ ํ˜•์‹

  • ์ž…๋ ฅ์œผ๋กœ๋Š” str1๊ณผ str2์˜ ๋‘ ๋ฌธ์ž์—ด์ด ๋“ค์–ด์˜จ๋‹ค. ๊ฐ ๋ฌธ์ž์—ด์˜ ๊ธธ์ด๋Š” 2 ์ด์ƒ, 1,000 ์ดํ•˜์ด๋‹ค.
  • ์ž…๋ ฅ์œผ๋กœ ๋“ค์–ด์˜จ ๋ฌธ์ž์—ด์€ ๋‘ ๊ธ€์ž์”ฉ ๋Š์–ด์„œ ๋‹ค์ค‘์ง‘ํ•ฉ์˜ ์›์†Œ๋กœ ๋งŒ๋“ ๋‹ค. ์ด๋•Œ ์˜๋ฌธ์ž๋กœ ๋œ ๊ธ€์ž ์Œ๋งŒ ์œ ํšจํ•˜๊ณ , ๊ธฐํƒ€ ๊ณต๋ฐฑ์ด๋‚˜ ์ˆซ์ž, ํŠน์ˆ˜ ๋ฌธ์ž๊ฐ€ ๋“ค์–ด์žˆ๋Š” ๊ฒฝ์šฐ๋Š” ๊ทธ ๊ธ€์ž ์Œ์„ ๋ฒ„๋ฆฐ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด "ab+"๊ฐ€ ์ž…๋ ฅ์œผ๋กœ ๋“ค์–ด์˜ค๋ฉด, "ab"๋งŒ ๋‹ค์ค‘์ง‘ํ•ฉ์˜ ์›์†Œ๋กœ ์‚ผ๊ณ , "b+"๋Š” ๋ฒ„๋ฆฐ๋‹ค.
  • ๋‹ค์ค‘์ง‘ํ•ฉ ์›์†Œ ์‚ฌ์ด๋ฅผ ๋น„๊ตํ•  ๋•Œ, ๋Œ€๋ฌธ์ž์™€ ์†Œ๋ฌธ์ž์˜ ์ฐจ์ด๋Š” ๋ฌด์‹œํ•œ๋‹ค. "AB"์™€ "Ab", "ab"๋Š” ๊ฐ™์€ ์›์†Œ๋กœ ์ทจ๊ธ‰ํ•œ๋‹ค.

์ถœ๋ ฅ ํ˜•์‹

์ž…๋ ฅ์œผ๋กœ ๋“ค์–ด์˜จ ๋‘ ๋ฌธ์ž์—ด์˜ ์ž์นด๋“œ ์œ ์‚ฌ๋„๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค. ์œ ์‚ฌ๋„ ๊ฐ’์€ 0์—์„œ 1 ์‚ฌ์ด์˜ ์‹ค์ˆ˜์ด๋ฏ€๋กœ, ์ด๋ฅผ ๋‹ค๋ฃจ๊ธฐ ์‰ฝ๋„๋ก 65536์„ ๊ณฑํ•œ ํ›„์— ์†Œ์ˆ˜์  ์•„๋ž˜๋ฅผ ๋ฒ„๋ฆฌ๊ณ  ์ •์ˆ˜๋ถ€๋งŒ ์ถœ๋ ฅํ•œ๋‹ค.

์˜ˆ์ œ ์ž…์ถœ๋ ฅ

str1str2answer

FRANCE french 16384
handshake shake hands 65536
aa1+aa2 AAAA12 43690
E=M*C^2 e=m*c^2 65536

 

๋ฌธ์ œํ’€์ด

๋‹ค์ค‘์ง‘ํ•ฉ์— ๋Œ€ํ•ด์„œ ๊ณต์ง‘ํ•ฉ๊ณผ ํ•ฉ์ง‘ํ•ฉ์— ๋“ค์–ด๊ฐˆ ์›์†Œ์˜ ๊ฐฏ์ˆ˜๊ฐ€ ๋‹ค๋ฅด๊ธฐ ๋•Œ๋ฌธ์— ์ด๋ฅผ ์‹๋ณ„ํ•˜๊ธฐ ์œ„ํ•ด Hash Map์„ ์‚ฌ์šฉํ•˜์˜€๋‹ค.

  • ๋งŒ์•ฝ์— ๊ต์ง‘ํ•ฉ์ผ ๊ฒฝ์šฐ์—๋Š” ๋‘ ์ง‘ํ•ฉ์˜ ๊ณตํ†ต ์›์†Œ์˜ ๊ฐฏ์ˆ˜ ์ค‘ ์ตœ์†Ÿ๊ฐ’์ด ๋“ค์–ด๊ฐ€์•ผ ํ•จ
  • ๋งŒ์•ฝ์— ํ•ฉ์ง‘ํ•ฉ์ผ ๊ฒฝ์šฐ์—๋Š” ๋‘ ์ง‘ํ•ฉ์˜ ๊ณตํ†ต ์›์†Œ์˜ ๊ฐฏ์ˆ˜ ์ค‘ ์ตœ๋Œ“๊ฐ’์ด ๋“ค์–ด๊ฐ€์•ผ ํ•จ
  • ๋งŒ์•ฝ์— ๊ณต์ง‘ํ•ฉ์ผ ๊ฒฝ์šฐ์—๋Š” ์ž„์˜์˜ ๊ฐ’ 1์„ ๋Œ€์ž…ํ•ด์ค˜์•ผ ํ•จ

์ฝ”๋“œ

function solution(str1, str2) {
  let answer = 0;
  let regExp = /^[a-zA-Z]*$/; // ๊ณต๋ฐฑ ๋ฌธ์ž, ํŠน์ˆ˜ ๋ฌธ์ž, ์ˆซ์ž ์‹๋ณ„
  let n = Math.max(str1.length, str2.length);
  let sH1 = new Map();
  let sH2 = new Map();

  for(let i = 0; i < n; i++) { // ๋‘ ์Œ์œผ๋กœ ๋ฌถ๋Š” ์—ฐ์‚ฐ
    if(str1[i + 1]) {
      let s1 = (str1[i] + str1[i + 1]).toUpperCase();
      if(regExp.test(s1)) {
        if(!sH1.has(s1)) sH1.set(s1, 1);
        else sH1.set(s1, sH1.get(s1) + 1);
      }
    } 
    if(str2[i + 1]) {
      let s2 = (str2[i] + str2[i + 1]).toUpperCase();
      if(regExp.test(s2)) {
        if(!sH2.has(s2)) sH2.set(s2, 1);
        else sH2.set(s2, sH2.get(s2) + 1);
      }
    }
  }
  
  let vacant = 0;
  let union = 0;

  for(let [key, val] of sH2) {
    if(sH1.has(key)) { // ๊ณตํ†ต ์›์†Œ์ผ ๊ฒฝ์šฐ
      vacant += sH1.get(key); // ์ตœ์†Ÿ๊ฐ’ ๋Œ€์ž…
      union += val; // ์ตœ๋Œ“๊ฐ’ ๋Œ€์ž…
    } else union += val; // ๊ณตํ†ต ์›์†Œ๊ฐ€ ์•„๋‹ ๊ฒฝ์šฐ
  }
  for(let [key, val] of sH1) { // ๋‚จ์€ ์›์†Œ ๊ฐ€์‚ฐ
    if(!sH2.has(key)) union++;
  }
  (vacant || union) === 0 ? answer = 65536 : answer = parseInt((vacant / union) * 65536);
  return answer;
}

 

์˜ค๋‹ต

์˜ˆ์‹œ ์ผ€์ด์Šค๋Š” ๋ชจ๋‘ ํ†ต๊ณผํ•˜์ง€๋งŒ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๋ฅผ ๋ชจ๋‘ ๋Œ๋ ธ์„ ๊ฒฝ์šฐ์— ๋ช‡ ๊ฐœ์˜ ์ผ€์ด์Šค์—์„œ ์˜ค๋‹ต์œผ๋กœ ์ฒ˜๋ฆฌ๋˜์—ˆ๋‹ค.

 

์•„๋งˆ๋„ ๊ต์ง‘ํ•ฉ๊ณผ ํ•ฉ์ง‘ํ•ฉ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ณผ์ •์— ์žˆ์–ด์„œ ๋ˆ„๋ฝ๋œ ์—ฐ์‚ฐ ๊ณผ์ •์ด ์žˆ์—ˆ๋˜ ๊ฒƒ ๊ฐ™๋‹ค.์‚ฌ์‹ค ์ฝ”๋“œ๋ฅผ ๋‹ค ์งœ๊ณ  ๋ณด๋‹ˆ ๋‚จ์€ ์›์†Œ๋“ค์˜ ๊ฐฏ์ˆ˜๋ฅผ ํ•ฉ์ง‘ํ•ฉ์— ๊ฐ€์‚ฐํ•ด์ฃผ๊ธฐ ์œ„ํ•ด ๋ฐ˜๋ณต๋ฌธ์„ ํ•œ ๋ฒˆ ๋” ์‹œํ–‰ํ•˜์˜€๋Š”๋ฐ, ์ด ๋ถ€๋ถ„์ด ๋กœ์ง ์ƒ ๋ถˆํ•„์š”ํ•  ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์ •ํ™•ํ•˜์ง€ ๋ชป ํ•˜๋‹ค๋Š” ์ƒ๊ฐ์ด ๋“ค์—ˆ๋‹ค.

 

JavaScript ์ƒ์—์„œ ์ง‘ํ•ฉ์„ ๊ตฌํ˜„ํ•˜๋Š” ๋ฐ์— ์žˆ์–ด์„œ Set ๊ฐ์ฒด๋ฅผ ํ•œ๋ฒˆ ํ™œ์šฉํ•ด์„œ ๋ฌธ์ œ๋ฅผ ๋‹ค์‹œ ํ’€์–ด๋ณด์•˜๊ณ  ๋ชจ๋“  ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๋ฅผ ํ†ต๊ณผํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค.

 

ํ•ด๋‹น ๋ฌธ์ œ๋ฅผ ํ‘ธ๋Š”๋ฐ์— ์žˆ์–ด์„œ ๊ฐ€์žฅ ์ค‘์š”ํ–ˆ๋˜ ์ ์€ ์ค‘๋ณต์„ ํ—ˆ์šฉ์น˜ ์•Š์€ ์›์†Œ ์ง‘ํ•ฉ์„ ์‚ฌ์ „์— ๋จผ์ € ๊ตฌํ•ด๋†“์€ ๋’ค, ํ•ด๋‹น ์ง‘ํ•ฉ์˜ ์›์†Œ ๊ฐ’๋“ค์„ ๊ธฐ์กด์˜ ๋ฐฐ์—ด ๊ฐ’๋“ค๊ณผ ๋น„๊ตํ•˜๋ฉด์„œ ํ•ฉ์ง‘ํ•ฉ์— ๋“ค์–ด๊ฐˆ ์›์†Œ์˜ ๊ฐฏ์ˆ˜์™€ ๊ต์ง‘ํ•ฉ์— ๋“ค์–ด๊ฐˆ ์›์†Œ์˜ ๊ฐฏ์ˆ˜๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณผ์ •์ด์—ˆ๋˜ ๊ฒƒ ๊ฐ™๋‹ค.

 

set

  • Set ๊ฐ์ฒด๋Š” ES6์—์„œ ๋“ฑ์žฅํ•œ ์ค‘๋ณต์„ ์ œ๊ฑฐํ•œ ๊ฐ’๋“ค์˜ ์ง‘ํ•ฉ
  • ์„ ์–ธ ๋ฐฉ์‹: let mySet = new Set()

์ฝ”๋“œ

function solution(str1, str2) {
  let answer = 0;
  let regExp = /^[a-zA-Z]*$/;
  let n = Math.max(str1.length, str2.length);
  let arr1 = [];
  let arr2 = [];
  let sH1 = new Map();
  let sH2 = new Map();

  for(let i = 0; i < n; i++) {
    if(str1[i + 1]) {
      let s1 = (str1[i] + str1[i + 1]).toUpperCase();
      if(regExp.test(s1)) {
        arr1.push(s1);
        if(!sH1.has(s1)) sH1.set(s1, 1);
        else sH1.set(s1, sH1.get(s1) + 1);
      }
    } 
    if(str2[i + 1]) {
      let s2 = (str2[i] + str2[i + 1]).toUpperCase();
      if(regExp.test(s2)) {
        arr2.push(s2);
        if(!sH2.has(s2)) sH2.set(s2, 1);
        else sH2.set(s2, sH2.get(s2) + 1);
      }
    }
  }

  let intersection = 0;
  let union = 0;

  let set = new Set(arr1.concat(arr2));
  set.forEach(elem => {
    let tmp1 = sH1.has(elem) ? sH1.get(elem) : 0; // ํ•ด๋‹น ๊ฐ’์„ ๊ฐ€์ง€๊ณ  ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๊ณ  ์žˆ๋‹ค๋ฉด ํ•ด๋‹น ๊ฐ’์˜ value๋ฅผ ํ• ๋‹น
    let tmp2 = sH2.has(elem) ? sH2.get(elem) : 0;
    intersection += Math.min(tmp1, tmp2); // ๊ต์ง‘ํ•ฉ์˜ ๊ฒฝ์šฐ์—๋Š” ๋‘ ๊ฐ’ ์ค‘ ์›์†Œ์˜ ์ตœ์†Œ ๊ฐฏ์ˆ˜๊ฐ€ ํ• ๋‹น๋˜์–ด์•ผ ํ•จ
    union += Math.max(tmp1, tmp2); // ํ•ฉ์ง‘ํ•ฉ์˜ ๊ฒฝ์šฐ์—๋Š” ๋‘ ๊ฐ’ ์ค‘ ์›์†Œ์˜ ์ตœ๋Œ€ ๊ฐฏ์ˆ˜๊ฐ€ ํ• ๋‹น๋˜์–ด์•ผ ํ•จ
  })
  !(intersection || union) ? answer = 65536 : answer = parseInt(intersection / union * 65536);
  return answer;
}
๋Œ“๊ธ€
๊ณต์ง€์‚ฌํ•ญ
์ตœ๊ทผ์— ์˜ฌ๋ผ์˜จ ๊ธ€
์ตœ๊ทผ์— ๋‹ฌ๋ฆฐ ๋Œ“๊ธ€
Total
Today
Yesterday
๋งํฌ
TAG
more
ยซ   2024/10   ยป
์ผ ์›” ํ™” ์ˆ˜ ๋ชฉ ๊ธˆ ํ† 
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
๊ธ€ ๋ณด๊ด€ํ•จ