<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>얼렁뚱땅미</title>
    <link>https://ddangna.tistory.com/</link>
    <description></description>
    <language>ko</language>
    <pubDate>Wed, 15 Apr 2026 06:52:42 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>정땅미</managingEditor>
    <image>
      <title>얼렁뚱땅미</title>
      <url>https://tistory1.daumcdn.net/tistory/6336717/attach/52a5b80210334434ad074056e0a6c7f5</url>
      <link>https://ddangna.tistory.com</link>
    </image>
    <item>
      <title>코딩 테스트 - 63</title>
      <link>https://ddangna.tistory.com/124</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;제가 오늘 해결하려 한 문제는!&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1172&quot; data-origin-height=&quot;1272&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bs1WWQ/btsNpAmAn3e/yfpqEl24tKkqfNFBVYyQ7K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bs1WWQ/btsNpAmAn3e/yfpqEl24tKkqfNFBVYyQ7K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bs1WWQ/btsNpAmAn3e/yfpqEl24tKkqfNFBVYyQ7K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbs1WWQ%2FbtsNpAmAn3e%2FyfpqEl24tKkqfNFBVYyQ7K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1172&quot; height=&quot;1272&quot; data-origin-width=&quot;1172&quot; data-origin-height=&quot;1272&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 문제입니다!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1단계인데 저에게... 어찌나 어렵던지... 알고리즘 생각하는 것부터 어려웠기에... ㅠㅠ 30분.. 고민 햇습니다..&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;결국 지피티에게 힌트를 얻었습니다!&lt;/p&gt;
&lt;pre id=&quot;code_1744904976359&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;function solution(k, m, score) {
    var answer = 0;
    score.sort((a, b) =&amp;gt; b - a);
    if(score.length &amp;lt; m) return 0;
    for(let i=0; i&amp;lt;score.length; i/=m) {
        var maxmoney = score.splice(i, m);
        if(maxmoney.length &amp;lt; m) break;
        answer += Math.min(...maxmoney) * m;
    }
    return answer;
}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;처음에 저는 코드를 이렇게 작성했는데...... 시간 초과가 뜨는 거예요!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시간 복잡도가 중요한 건 알았지만.. 갑자기 코드를 최적화하려니까 너무 어려운 것입니다.....ㅠㅠ&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 제가 다시 바꾼 코드는!&lt;/p&gt;
&lt;pre id=&quot;code_1744905024284&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;function solution(k, m, score) {
    var answer = 0;
    score.sort((a, b) =&amp;gt; b - a);
    for(let i=0; i&amp;lt;score.length; i+=m) {
        var minscore = score[i + m - 1];
        if(minscore) answer += minscore * m;
    }
    return answer;
}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이것입니다! 굳이 splice 를 해줄 필요 없이 [i + m - 1] 이라는 생각지도 못 했던 식을 가져왓어요!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이렇게 해주면 제가 어차피 내림차순 정렬을 해 뒀으니 바로 가장 작은 값을 가져올 수 있더라구요!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;근데 배열이 m 으로 나눠 떨어지지 않아 남을 수 있잖아요! 그럼 최솟값이 없는 경우이기 때문에~ minscore 가 있을 경우에만!!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;answer 을 구해줬습니다!!!!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;코드가 깔끔해진 게 한 눈에 보이니까 신기하기도 하면서~ 뭔가 굉장히... 아쉬운 느낌이 들고,, 더 공부해야겠다는 생각이 들었습니당.&lt;/p&gt;</description>
      <category>레쭈고 코테</category>
      <category>JavaScript</category>
      <category>JS</category>
      <category>과일장수</category>
      <category>코딩테스트</category>
      <category>코테</category>
      <category>프로그래머스</category>
      <author>정땅미</author>
      <guid isPermaLink="true">https://ddangna.tistory.com/124</guid>
      <comments>https://ddangna.tistory.com/124#entry124comment</comments>
      <pubDate>Fri, 18 Apr 2025 00:52:49 +0900</pubDate>
    </item>
    <item>
      <title>코딩테스트 - 62</title>
      <link>https://ddangna.tistory.com/122</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;저 이제 취업해야 합니다.....&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 저도 이제 바빠도 코딩테스트를 풀어야 하는데요..&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;뭔가 문제를 많이 풀어서 알고리즘에 적응을 해야 하는데 그게 쉽지가 않은 것 같아요.. ㅠㅠ&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 오늘 접한 문제는~&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2025-03-23 오후 10.53.33.png&quot; data-origin-width=&quot;1164&quot; data-origin-height=&quot;906&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/xo4PO/btsMUlCqC5o/ecgP12fj1TeqslO8WDoFWk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/xo4PO/btsMUlCqC5o/ecgP12fj1TeqslO8WDoFWk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/xo4PO/btsMUlCqC5o/ecgP12fj1TeqslO8WDoFWk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fxo4PO%2FbtsMUlCqC5o%2FecgP12fj1TeqslO8WDoFWk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1164&quot; height=&quot;906&quot; data-filename=&quot;스크린샷 2025-03-23 오후 10.53.33.png&quot; data-origin-width=&quot;1164&quot; data-origin-height=&quot;906&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이것입니당.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사실 어떻게 풀어야할지 감이 안 와서 지피티형한테 물어봤더니&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이진수로 바꿔! -&amp;gt; 1의 개수 세! -&amp;gt; 그리고 비교해&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;라고 해서.. 딱 명령어대로 코드를 짰습니다.&lt;/p&gt;
&lt;pre id=&quot;code_1742738157002&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;function solution(n) {
    var answer = 0;
    var n2 = n.toString(2);
    var countn2 = n2.split('1').length - 1;
    answer = n + 1;
    while(true) {
        if(answer.toString(2).split('1').length - 1 === countn2) return answer;
        answer++;
    } 
}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;저는 약간 알고리즘을 생각해내는 부분은 약한데 코드를 짜는 건 또 금방할 수 있는 것 같아요! ㅠㅠ&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 점이 단점이라고 생각합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만 이 코드는 해석 할 건 딱히 없고 쉬웠습니다!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;n을 2진수로 바꾼 후 1의 개수를 세주고 결과값 조건이 n보다 크다고 했으니 answer 를 n + 1 부터 돌려줍니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;만약 1의 개수가 같다면 바로 리턴!!!!!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아니라면 answer 를 하나 씩 늘려가면서 해주면 됩니다.~~&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;간결! 오늘 코테 끗.&lt;/p&gt;</description>
      <category>레쭈고 코테</category>
      <category>JavaScript</category>
      <category>JS</category>
      <category>다음큰숫자</category>
      <category>자바스크립트</category>
      <category>코딩테스트</category>
      <category>코테</category>
      <category>프로그래머스</category>
      <author>정땅미</author>
      <guid isPermaLink="true">https://ddangna.tistory.com/122</guid>
      <comments>https://ddangna.tistory.com/122#entry122comment</comments>
      <pubDate>Sun, 23 Mar 2025 23:05:31 +0900</pubDate>
    </item>
    <item>
      <title>코딩테스트 - 61</title>
      <link>https://ddangna.tistory.com/121</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;여러분덜!!! 저 Mac 으로 바꿨어요!!!!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;바꾸고 처음으로 쓰는 블로그네요~ 코딩테스트는 꾸준히 라고 말하기는 민망하고,, 여전히 하고 있었는데&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;MySQL 로 많이 풀었어요... 그래서 오늘은 JS 로 했답니다!&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;오늘 푼 문제는~&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2025-02-28 오후 11.19.15.png&quot; data-origin-width=&quot;1162&quot; data-origin-height=&quot;608&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dpSsqj/btsMyI6GiTB/ODPbOw5autfgSkwQWHg980/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dpSsqj/btsMyI6GiTB/ODPbOw5autfgSkwQWHg980/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dpSsqj/btsMyI6GiTB/ODPbOw5autfgSkwQWHg980/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdpSsqj%2FbtsMyI6GiTB%2FODPbOw5autfgSkwQWHg980%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1162&quot; height=&quot;608&quot; data-filename=&quot;스크린샷 2025-02-28 오후 11.19.15.png&quot; data-origin-width=&quot;1162&quot; data-origin-height=&quot;608&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 문제입니다.&lt;/p&gt;
&lt;pre id=&quot;code_1740752337503&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;function solution(t, p) {
    var answer = 0;
    var t1 = [];
    var p1 = p.length;
    for(let i=0; i&amp;lt;=t.length - p1; i++) {
        t1.push(t.substring(i, i + p1));
    }
    for(let i=0; i&amp;lt;t1.length; i++) {
        if(Number(t1[i]) &amp;lt;= Number(p)) answer++;
    }
    return answer;
}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;코드가 너무 가독성이 떨어지는 느낌도 있네요....&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;우선 for 문을 애매하게 돌려줬는데 그 이유는 p 길이 만큼 문자열을 잘라야 하니까 p 길이를 뺀 만큼을 돌려 줬어요!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;안 그러면 배열의 길이가 넘어가니까요! 그리고 substring 으로 잘라줬습니닷.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;처음에는 p1 만큼만 잘라줬는데 계속 값이 이상해서 뭐가 문제지 햇는데 p 길이 만큼 잘라주는 게 아니라 -&amp;gt; 이렇게 하려면 다른 함수를 써야 했는데 착각을 했습니다  &lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아무튼 그걸 수정해서 성공했습니다~! 나머지는 어려움 없었어요~ 모두 파이팅합시다.&lt;/p&gt;</description>
      <category>레쭈고 코테</category>
      <category>JavaScript</category>
      <category>JS</category>
      <category>코딩테스트</category>
      <category>코테</category>
      <category>크기가작은부분문자열</category>
      <category>프로그래머스</category>
      <author>정땅미</author>
      <guid isPermaLink="true">https://ddangna.tistory.com/121</guid>
      <comments>https://ddangna.tistory.com/121#entry121comment</comments>
      <pubDate>Fri, 28 Feb 2025 23:23:32 +0900</pubDate>
    </item>
    <item>
      <title>코딩 테스트 - 60</title>
      <link>https://ddangna.tistory.com/120</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;오늘은 조금 심심풀이 쉬운 문제를 선택해서 풀어보았습니당.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;734&quot; data-origin-height=&quot;366&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/3eNTC/btsMc0Hh5ZK/LZnxg8YP3jnB8Z4jAnUkoK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/3eNTC/btsMc0Hh5ZK/LZnxg8YP3jnB8Z4jAnUkoK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/3eNTC/btsMc0Hh5ZK/LZnxg8YP3jnB8Z4jAnUkoK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F3eNTC%2FbtsMc0Hh5ZK%2FLZnxg8YP3jnB8Z4jAnUkoK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;734&quot; height=&quot;366&quot; data-origin-width=&quot;734&quot; data-origin-height=&quot;366&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;제가 짠 코드는~&lt;/p&gt;
&lt;pre id=&quot;code_1739253942473&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;function solution(arr, idx) {
    var answer = 0;
    for(let i=idx; i &amp;lt; arr.length; i++) {
        if(arr[i] === 1) return i;
        else answer = -1;
    }
    return answer;
}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;너무 쉬워서 작성할 것도 없지만 처음에 return 이랑 answer 중 뭘 사용해야 하나 조금 고민했습니당.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;근데 두 개를 한 개 씩 써 줬는데요 여러 방법을 사용했지만 저렇게 해야 제출에서도 올바른 값이 나옵니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;왜냐하면 가장 작은 인덱스를 반환해야 해서 바로 반복문을 나가야 하므로 if 문에서는 return 을 써 줬구요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;근데 또 인덱스는 끝까지 가야 하는데 중간에 1이 없다고 바로 for 문을 나가면 안 돼서 answer 에 -1 을 써 줬습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 이렇게 푸는 방법을 select 했습니당.&lt;/p&gt;</description>
      <category>레쭈고 코테</category>
      <category>JavaScript</category>
      <category>JS</category>
      <category>가까운1찾기</category>
      <category>코딩테스트</category>
      <category>코테</category>
      <category>프로그래머스</category>
      <author>정땅미</author>
      <guid isPermaLink="true">https://ddangna.tistory.com/120</guid>
      <comments>https://ddangna.tistory.com/120#entry120comment</comments>
      <pubDate>Tue, 11 Feb 2025 15:08:07 +0900</pubDate>
    </item>
    <item>
      <title>코딩 테스트 - 59</title>
      <link>https://ddangna.tistory.com/119</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;오늘의 문제는&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;743&quot; data-origin-height=&quot;392&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cfdE80/btsMcptiQ9S/RV9HgNNh0Q7zwVEPrX2Vk0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cfdE80/btsMcptiQ9S/RV9HgNNh0Q7zwVEPrX2Vk0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cfdE80/btsMcptiQ9S/RV9HgNNh0Q7zwVEPrX2Vk0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcfdE80%2FbtsMcptiQ9S%2FRV9HgNNh0Q7zwVEPrX2Vk0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;743&quot; height=&quot;392&quot; data-origin-width=&quot;743&quot; data-origin-height=&quot;392&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이진 변환 반복하기였습니닷&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사실 이 문제는 여러 번 들낙해도 풀지 못하고 나갔었는데 어제 친구가 풀었다길래 저도 용기를 내서 풀었고, 내가 저번에 풀어둔 코드에 while 문 추가해서 성공했습니다!&lt;/p&gt;
&lt;pre id=&quot;code_1739194280385&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;function solution(s) {
    var answer = [];
    var cnt = s.split('0').length - 1;
    var whicnt = 0;
    while(s.length &amp;gt; 1) {
        s = s.replace(/0/g,'');
        s = Number(s.length).toString(2);
        cnt += s.split('0').length - 1;
        whicnt++;
    }
    answer.push(whicnt);
    answer.push(cnt)
    return answer;
}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;우선 cnt 에서 처음에 0의 개수를 구해주고, 만약 s.length 가 1이 되면 바로 끝내야 해서 저런 조건식을 넣어 줬어요&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리구, 정규식을 이용해서 0을 전부 제거해 줬습니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;0이 제거된 s 문자열을 메서드를 통해서 이진 문자열 숫자로 바꿔 주었고 0의 개수를 또 더해 주었습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;왜냐하면 answer 에 최종적으로 들어가야 하는 값은 while 문이 총 몇 번 돌았는지, 0이 몇 개가 제거 되었는지이기 때문에 마지막에는 push 를 해 줬습니다!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;오늘 코테도 완성 ㅎㅎ 부히힛&amp;nbsp;&lt;/p&gt;</description>
      <category>레쭈고 코테</category>
      <category>JavaScript</category>
      <category>JS</category>
      <category>이진변환반복하기</category>
      <category>코딩테스트</category>
      <category>코테</category>
      <category>프로그래머스</category>
      <author>정땅미</author>
      <guid isPermaLink="true">https://ddangna.tistory.com/119</guid>
      <comments>https://ddangna.tistory.com/119#entry119comment</comments>
      <pubDate>Mon, 10 Feb 2025 22:33:38 +0900</pubDate>
    </item>
    <item>
      <title>코딩 테스트 - 58</title>
      <link>https://ddangna.tistory.com/118</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;오늘의 문제는~&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;740&quot; data-origin-height=&quot;436&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bg0Edv/btsLVJk4KHj/IFNiNRMqJmzM4k2rFDo1k1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bg0Edv/btsLVJk4KHj/IFNiNRMqJmzM4k2rFDo1k1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bg0Edv/btsLVJk4KHj/IFNiNRMqJmzM4k2rFDo1k1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbg0Edv%2FbtsLVJk4KHj%2FIFNiNRMqJmzM4k2rFDo1k1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;740&quot; height=&quot;436&quot; data-origin-width=&quot;740&quot; data-origin-height=&quot;436&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 문제였습니닷!&lt;/p&gt;
&lt;pre id=&quot;code_1737540143276&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;function solution(n,a,b)
{
    var answer = 0;
    
    while(a!=b) {
        a = Math.ceil(a/2);
        b = Math.ceil(b/2);
        answer += 1;
    }

    return answer;
}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;저의 코드는 a 와 b 가 같지 않을 때만 a / 2 를 무조건 올림, b / 2 를 무조건 올림하고 answer 를 ++ 해 줬습니닷.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;a, b 는 무조건 올림을 하므로 절대 0이 나올 수 없어요 그래서 가장 작은 수가 아무리 해도 1이 됩니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;만약 a 와 b 가 같으면 즉, 둘 다 값이 1이 될 때까지 answer 를 ++ 해 줬답니닷!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그럼 문제 해결!~&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;생각보다 간단한데 이런 식을 생각해 내는 게 어렵습니닷...&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 친구의 도움을 많이 받는 것 같습니다.ㅠㅠ&lt;/p&gt;</description>
      <category>레쭈고 코테</category>
      <category>JavaScript</category>
      <category>JS</category>
      <category>예상대진표</category>
      <category>코딩테스트</category>
      <category>코테</category>
      <category>프로그래머스</category>
      <author>정땅미</author>
      <guid isPermaLink="true">https://ddangna.tistory.com/118</guid>
      <comments>https://ddangna.tistory.com/118#entry118comment</comments>
      <pubDate>Wed, 22 Jan 2025 19:05:47 +0900</pubDate>
    </item>
    <item>
      <title>코딩 테스트 - 58</title>
      <link>https://ddangna.tistory.com/117</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;오늘 푼 문제는요~&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;753&quot; data-origin-height=&quot;444&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/tzkJ3/btsLVmpjClG/kyCn8xwVPrnuXa18Kzc7eK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/tzkJ3/btsLVmpjClG/kyCn8xwVPrnuXa18Kzc7eK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/tzkJ3/btsLVmpjClG/kyCn8xwVPrnuXa18Kzc7eK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FtzkJ3%2FbtsLVmpjClG%2FkyCn8xwVPrnuXa18Kzc7eK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;753&quot; height=&quot;444&quot; data-origin-width=&quot;753&quot; data-origin-height=&quot;444&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 문제입니닷!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사실 이 문제는 옛날부터 손만 대고 한 번도 못 풀었던 문제인데요.....&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;친구가 이걸 풀어서 어제 친구 코드를 보고 이해한 다음에 오늘 풀어보았던 문제입니닷.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;스택 또는 큐를 이용해야 한다고 했는데 어떻게 이용해야 하는지 감이 전혀 안 왔지만 친구 코드를 보니 아하! 했습니다.&lt;/p&gt;
&lt;pre id=&quot;code_1737463851794&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;function solution(s){
    var answer = [];

    for(let i of s) {
        if(i === '(') answer.push(i);
        else {
            if(answer.length === 0) return false
            answer.pop();
        }
    }
    
    if(answer.length != 0) return false

    return true;
}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;우선 answer 를 배열로 지정해주고 s 를 돈 다음 여는 괄호면 이걸 answer 배열에 넣어줬어여!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;근데 만약 열린 괄호가 먼저 안 들어가서 길이가 0이다. 그럼 당연히 형식에 올바르지 않으므로 바로 false 를 리턴해 줍니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;만약 열린 괄호가 있다면 그걸 다시 빼 와요! 이런 식으로 코드를 돌리면 올바른 괄호일 경우는 true 가 딱 나옵니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그럴 때 true 를 return 해 주면 돼요!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;오늘의 코테도 끗~!&lt;/p&gt;</description>
      <category>레쭈고 JS</category>
      <category>JavaScript</category>
      <category>JS</category>
      <category>올바른괄호</category>
      <category>코딩테스트</category>
      <category>코테</category>
      <category>프로그래머스</category>
      <author>정땅미</author>
      <guid isPermaLink="true">https://ddangna.tistory.com/117</guid>
      <comments>https://ddangna.tistory.com/117#entry117comment</comments>
      <pubDate>Tue, 21 Jan 2025 21:55:33 +0900</pubDate>
    </item>
    <item>
      <title>코딩 테스트 - 57</title>
      <link>https://ddangna.tistory.com/116</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;오늘 제가 푼 문제는!&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;749&quot; data-origin-height=&quot;538&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ccervd/btsLJU1y1mo/mQV2keHj8ENcsxD3ZasUsK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ccervd/btsLJU1y1mo/mQV2keHj8ENcsxD3ZasUsK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ccervd/btsLJU1y1mo/mQV2keHj8ENcsxD3ZasUsK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fccervd%2FbtsLJU1y1mo%2FmQV2keHj8ENcsxD3ZasUsK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;749&quot; height=&quot;538&quot; data-origin-width=&quot;749&quot; data-origin-height=&quot;538&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이것이엇습니닷.ㅎㅎ&lt;/p&gt;
&lt;pre id=&quot;code_1736683894193&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;function solution(number, limit, power) {
    var answer = 0;
    var cnt = 0;
    var num = [];
    for(let i=1; i&amp;lt;=number; i++) {
        for(let j=1; j&amp;lt;= Math.sqrt(i); j++) {
            if(i%j===0) {
                cnt++;
                if (j !== i / j) cnt++;
            }
        }
        if(cnt !== 0) num.push(cnt);
        cnt = 0;
    }
    for(let i=0; i&amp;lt;num.length; i++) {
        if(num[i] &amp;gt; limit) num[i] = power;
        answer += num[i];
    }
    return answer;
}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이건 성공한 코드예요!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;처음에 저는 j &amp;lt;= i 만큼만 돌리고 if (j !== i/j) cnt++; 이 코드를 빼고 풀었는데 시간 초과가 뜨더라구요..ㅠㅠ&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 어떻게 풀어야 하나 고민했어요!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 이 문제 질문 보기를 봤더니 사람들이 약수를 구할 때 i까지 돌리는 것보다는 i의 절반까지만 돌리라는 거예요!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 말을 듣고 저는 Math.sqrt(i) 이렇게만 쓰고 멀뚱멀뚱 있었는데 이제는 값이 틀리더라구요..&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서ㅠㅠ 또다시 멘붕에 빠졌지만 생각해 보니까 이러면 그 j 의 짝! 은 ++ 가 안 되는 거예요.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;985&quot; data-origin-height=&quot;466&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cOROin/btsLJSWXU5E/GvWouyWbHabHV8VEdMW4uk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cOROin/btsLJSWXU5E/GvWouyWbHabHV8VEdMW4uk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cOROin/btsLJSWXU5E/GvWouyWbHabHV8VEdMW4uk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcOROin%2FbtsLJSWXU5E%2FGvWouyWbHabHV8VEdMW4uk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;985&quot; height=&quot;466&quot; data-origin-width=&quot;985&quot; data-origin-height=&quot;466&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;제가 예시 문장을 못 만들어서 이것을 가져왓습니닷.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지피티가 예시를 만들어 줬어요ㅎㅎ&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 이제 만약 j 가 i/j 나눈 것과 같지 않다면 또 ++ 를 해 줘야 해요!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 위의 조건에서 i % j === 0 이 되어야 한다는 조건이 이미 있으니 여긴 헷갈리지 않겠죠?&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이렇게! 시간 복잡도도 아주아주 중요하다는 사실을 다시금 알게 되었습니닷.&lt;/p&gt;</description>
      <category>레쭈고 코테</category>
      <category>JavaScript</category>
      <category>JS</category>
      <category>기사단원의무기</category>
      <category>코딩테스트</category>
      <category>코테</category>
      <category>프로그래머스</category>
      <author>정땅미</author>
      <guid isPermaLink="true">https://ddangna.tistory.com/116</guid>
      <comments>https://ddangna.tistory.com/116#entry116comment</comments>
      <pubDate>Sun, 12 Jan 2025 21:21:00 +0900</pubDate>
    </item>
    <item>
      <title>코딩 테스트 - 56</title>
      <link>https://ddangna.tistory.com/115</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;오늘의 문제는~&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;737&quot; data-origin-height=&quot;427&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/8jNmC/btsLHAtRbry/0VEfzobhbh9UKqOEB5upF1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/8jNmC/btsLHAtRbry/0VEfzobhbh9UKqOEB5upF1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/8jNmC/btsLHAtRbry/0VEfzobhbh9UKqOEB5upF1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F8jNmC%2FbtsLHAtRbry%2F0VEfzobhbh9UKqOEB5upF1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;737&quot; height=&quot;427&quot; data-origin-width=&quot;737&quot; data-origin-height=&quot;427&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 문제엿습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 문제를 해결하기 전에 다섯 문제 정도를 떠돌다가 다 안 풀려서.. 이걸로 정착햇어요...&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;솔직히 이것도 쉽진 않았구, 요즘은 자료 구조를 활용하는 코딩테스트를 많이 풀려고 하고, 정답률이 낮은 걸 풀려고 하니까&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시간이 더 걸리고 잘 안 풀리는 것 같습니닷.&lt;/p&gt;
&lt;pre id=&quot;code_1736307802982&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;function solution(participant, completion) {
    var answer = '';
    completion.sort()
    participant.sort() 
    for(let i=0; i&amp;lt;participant.length; i++) {
        if(participant[i] !== completion[i]) return participant[i]
    }
    for(let j=0; j&amp;lt;participant.length; j++) {
        if(!completion.includes(participant[j])) answer = participant[j]
    }
    return answer;
}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;코드를 어찌저찌 짰는데 계속 안 돼서 살짝 구글링을 했더니 6번째 줄에서 return 을 써야 하더라구요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;근데 전!!!!!!!!!!!! 왜 return 을 써야 하는지 도무지 이해가 안 되었어요...&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이건 지피티가 추천해준 코드입니닷.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이것도 정답 처리로 해주던데 이렇게 되면 첫 번째 완주 실패자만 알 수 있는 거 아닌가요?!...........&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그럼 두 번째 완주 실패자는 어떻게 처리가 되나요.. 라고 생각했는데&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문제에서 한 명 빼고 완주한다는 조건이 주어져 있었네요!...&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이러면 납득이 갑니닷... 하하.. 이래서 문제를 꼼꼼하게 읽어야 한다고 생각해요...&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 위의 제 코드에서도 두 번째 for 문은 지웠습니닷.... (애초에 왜 넣었을까요???)&lt;/p&gt;
&lt;pre id=&quot;code_1736308382756&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;function solution(participant, completion) {
    completion.sort();
    participant.sort();

    for (let i = 0; i &amp;lt; participant.length; i++) {
        if (participant[i] !== completion[i]) {
            return participant[i]; // 첫 번째 완주 실패자 반환
        }
    }
}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;뭔가 리턴이라는 단어 하나로 코드가 완전 틀리기도 하고, 맞을 수도 있다는 게 신기합니다!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음 번에 또 해시 관련된 문제를 풀어봐야겟어요!&lt;/p&gt;</description>
      <category>레쭈고 코테</category>
      <category>JavaScript</category>
      <category>JS</category>
      <category>완주하지못한선수</category>
      <category>코딩테스트</category>
      <category>코테</category>
      <category>프로그래머스</category>
      <author>정땅미</author>
      <guid isPermaLink="true">https://ddangna.tistory.com/115</guid>
      <comments>https://ddangna.tistory.com/115#entry115comment</comments>
      <pubDate>Wed, 8 Jan 2025 12:56:59 +0900</pubDate>
    </item>
    <item>
      <title>코딩 테스트 - 55</title>
      <link>https://ddangna.tistory.com/114</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;오늘의 문제는~&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;739&quot; data-origin-height=&quot;496&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cd8xu2/btsLFLXrLzs/N5kYfIjLAAIQcvxibvDlok/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cd8xu2/btsLFLXrLzs/N5kYfIjLAAIQcvxibvDlok/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cd8xu2/btsLFLXrLzs/N5kYfIjLAAIQcvxibvDlok/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcd8xu2%2FbtsLFLXrLzs%2FN5kYfIjLAAIQcvxibvDlok%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;739&quot; height=&quot;496&quot; data-origin-width=&quot;739&quot; data-origin-height=&quot;496&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;였습니닷!&lt;/p&gt;
&lt;pre id=&quot;code_1736234443597&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;function solution(answers) {
    var answer = [];
    var per1 = [1, 2, 3, 4, 5];
    var per2 = [2, 1, 2, 3, 2, 4, 2, 5];
    var per3 = [3, 3, 1, 1, 2, 2, 4, 4, 5, 5];
    var answer1=0
    var answer2=0
    var answer3=0
    
    for(let i=0; i&amp;lt;answers.length; i++) {
        if (answers[i] === per1[i % per1.length]) answer1++;
        if (answers[i] === per2[i % per2.length]) answer2++;
        if (answers[i] === per3[i % per3.length]) answer3++;
    }
    
    if(Math.max(answer1, answer2, answer3) === answer1) answer.push(1);
    if(Math.max(answer1, answer2, answer3) === answer2) answer.push(2);
    if(Math.max(answer1, answer2, answer3) === answer3) answer.push(3);
    return answer;
}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;저 문제 보자마자 지저분한 코드 밖에 생각이 안 나서.. 우선은 이렇게 풀고 다른 사람의 풀이를 보려 햇어요!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;근데 비슷하더라구요....&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 다행이면서도 더 간단한 풀이가 있었으면 좋겠다구 생각을 했구요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;per1, per2, per3 for 문을 반복해서 돌려야 하는 게 문제로 다가와서 검색해 보니 js modulo 연산자! 를 쓰면 된다고 하더라구요&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 per[i % per1.length] 이렇게 해서 나머지를 이용해서 배열을 계속 돌면서 사용할 수 있게 했어요!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;처음 알아서 굉장히 신기하더라구요... !!!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실무에서도 자주 쓰인다고 나왓는데 자주 이용해야 할 것 같습니닷.&lt;/p&gt;</description>
      <category>레쭈고 코테</category>
      <category>JavaScript</category>
      <category>JS</category>
      <category>modulo연산자</category>
      <category>모의고사</category>
      <category>코딩테스트</category>
      <category>코테</category>
      <category>프로그래머스</category>
      <author>정땅미</author>
      <guid isPermaLink="true">https://ddangna.tistory.com/114</guid>
      <comments>https://ddangna.tistory.com/114#entry114comment</comments>
      <pubDate>Tue, 7 Jan 2025 16:25:32 +0900</pubDate>
    </item>
  </channel>
</rss>