<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>delog.lee</title>
        <link>https://velog.io/</link>
        <description>디자이너에서 개발자로 가는 발자국들을 기록하는 공간입니다. </description>
        <lastBuildDate>Tue, 06 Sep 2022 08:01:29 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <image>
            <title>delog.lee</title>
            <url>https://images.velog.io/images/delog_lee/profile/36682880-4e10-413e-9322-4d564cc1014d/Starrain-typeA.jpg</url>
            <link>https://velog.io/</link>
        </image>
        <copyright>Copyright (C) 2019. delog.lee. All rights reserved.</copyright>
        <atom:link href="https://v2.velog.io/rss/delog_lee" rel="self" type="application/rss+xml"/>
        <item>
            <title><![CDATA[백준 이분탐색- 2512번]]></title>
            <link>https://velog.io/@delog_lee/%EB%B0%B1%EC%A4%80-%EC%9D%B4%EB%B6%84%ED%83%90%EC%83%89-2512%EB%B2%88</link>
            <guid>https://velog.io/@delog_lee/%EB%B0%B1%EC%A4%80-%EC%9D%B4%EB%B6%84%ED%83%90%EC%83%89-2512%EB%B2%88</guid>
            <pubDate>Tue, 06 Sep 2022 08:01:29 GMT</pubDate>
            <description><![CDATA[<pre><code class="language-python">
from sys import stdin
input = stdin.readline

n = int(input())
requests = list(map(int, input().split()))
budget = int(input())

low = 0 
high = max(requests)


while low &lt;= high:
    mid = (low + high) // 2
    sum = 0
    for request in requests:
        if request &lt;= mid:
            sum += request
        else:
            sum += mid        
    if sum &lt;= budget:
        low = mid + 1
    else:
        high = mid - 1


print(high)</code></pre>
]]></description>
        </item>
        <item>
            <title><![CDATA[[스파르타코딩클럽] 웹개발 종합반 - 1주차]]></title>
            <link>https://velog.io/@delog_lee/%EC%8A%A4%ED%8C%8C%EB%A5%B4%ED%83%80%EC%BD%94%EB%94%A9%ED%81%B4%EB%9F%BD-%EC%9B%B9%EA%B0%9C%EB%B0%9C-%EC%A2%85%ED%95%A9%EB%B0%98-1%EC%A3%BC%EC%B0%A8</link>
            <guid>https://velog.io/@delog_lee/%EC%8A%A4%ED%8C%8C%EB%A5%B4%ED%83%80%EC%BD%94%EB%94%A9%ED%81%B4%EB%9F%BD-%EC%9B%B9%EA%B0%9C%EB%B0%9C-%EC%A2%85%ED%95%A9%EB%B0%98-1%EC%A3%BC%EC%B0%A8</guid>
            <pubDate>Thu, 09 Dec 2021 07:59:13 GMT</pubDate>
            <description><![CDATA[<h4 id="수강목적">수강목적</h4>
<p>현재 퍼블리셔 일을 하면서 html,css는 잘 할수 있다고 생각하지만 조금씩 부족한 부분이 있다고 생각하였고, js부분이 많이 부족한 것 같아서 기본부터 듣자하고 수강을 신청하였다.</p>
<h4 id="1주차-수업">1주차 수업</h4>
<ul>
<li><p>7) HTML과 CSS의 개념</p>
<ul>
<li><p>HTML은 뼈대, CSS는 꾸미기!</p>
  <aside>
  👉 HTML은 구역과 텍스트를 나타내는 코드로, CSS는 잡은 구역을 꾸며주는 것으로 생각합니다. HTML 내 style 속성으로 꾸미기를 할 수 있지만, 긴 세월동안 이것을 한데 모아 볼 수 있는 CSS 파일이 탄생하게 되었습니다. HTML 코드 내에 CSS 파일을 불러와서 적용합니다.

  </aside>
</li>
<li><p>또한 CSS를 잘 사용할 줄 아는 것과, &#39;예쁘게&#39; 만드는 것은 다른 영역이기 때문에(붓을 잡을 줄 아는 것과 그림을 잘 그릴 줄 아는 것의 차이), 많은 경우 웹디자이너나 퍼블리셔에게 의존하게 됩니다.</p>
</li>
</ul>
</li>
<li><p>8) HTML 기초</p>
<ul>
<li><p>HTML은 크게 head와 body로 구성되며, head안에는 페이지의 속성 정보를, body안에는 페이지의 내용을 담습니다.</p>
</li>
<li><p>head 안에 들어가는 대표적인 요소들: meta, script, link, title 등</p>
  <aside>
  👉 페이지의 속성을 정의하거나, 필요한 스크립트들을 부릅니다. 즉, 눈에 안 보이는 필요한 것들을 담는 것. 나중에 body 작업을 하면서 필요한 정보들을 넣어보겠습니다.

  </aside>
</li>
<li><p>body 안에 들어가는 대표적인 요소들!</p>
  <aside>
  👉 이 외에도 아주 많으며, 개발자들도 모두 외우고 있지 않습니다. 필요할 때마다 찾아서 넣어보세요!

  </aside>

  <aside>
  👉 **잠깐! 정렬의 중요성**
  코드의 정렬이 제대로 되어있지 않으면, 코드의 생김새를 파악할 수 없어 오류를 해결하기가 무척 어려워집니다. Pycharm에서 **ctrl+alt+L** (맥은 cmd+alt+L) 로 자동정렬 기능을 사용해보세요.

  </aside>


</li>
</ul>
</li>
</ul>
<pre><code>    - 변수 &amp; 기본연산
- 변수 대입( a = 2 )의 의미: &quot;오른쪽에 있는 것을 왼쪽에 넣는 것!&quot;
(2를 a라는 변수에 넣는다)
- let으로 변수를 선언합니다.

    ```jsx
    let num = 20
    num = &#39;Bob&#39;

    // 변수는 값을 저장하는 박스예요.
    // 한 번 선언했으면, 다시 선언하지 않고 값을 넣습니다.
    ```

- 사칙연산, 그리고 문자열 더하기가 기본적으로 가능합니다.

    ```jsx
    let a = 1
    let b = 2

    a+b // 3
    a/b // 0.5

    let first = &#39;Bob&#39;
    let last = &#39;Lee&#39;

    first+last // &#39;BobLee&#39;

    first+&#39; &#39;+last // &#39;Bob Lee&#39;

    first+a // Bob1 -&gt; 문자+숫자를 하면, 숫자를 문자로 바꾼 뒤 수행합니다.
    ```

- 변수명은 아무렇게나?

    ```jsx
    let first_name = &#39;bob&#39; // snake case라고 합니다.

    또는,

    let firstName = &#39;bob&#39; // camel case라고 합니다. 회사마다 규칙이 있죠.

    과 같이, 쉽게 알아볼 수 있게 쓰는 게 중요합니다.
    다른 특수문자 또는 띄워쓰기는 불가능합니다!
    ```</code></pre><ul>
<li><p>리스트 &amp; 딕셔너리</p>
<ul>
<li><p>리스트: 순서를 지켜서 가지고 있는 형태입니다.</p>
<pre><code class="language-jsx">  let a_list = []  // 리스트를 선언. 변수 이름은 역시 아무렇게나 가능!

  // 또는,

  let b_list = [1,2,&#39;hey&#39;,3] // 로 선언 가능

  b_list[1] // 2 를 출력
  b_list[2] // &#39;hey&#39;를 출력

  // 리스트에 요소 넣기
  b_list.push(&#39;헤이&#39;)
  b_list // [1, 2, &quot;hey&quot;, 3, &quot;헤이&quot;] 를 출력

  // 리스트의 길이 구하기
  b_list.length // 5를 출력</code></pre>
</li>
<li><p>딕셔너리: 키(key)-밸류(value) 값의 묶음</p>
<pre><code class="language-jsx">  let a_dict = {}  // 딕셔너리 선언. 변수 이름은 역시 아무렇게나 가능!

  // 또는,

  let b_dict = {&#39;name&#39;:&#39;Bob&#39;,&#39;age&#39;:21} // 로 선언 가능
  b_dict[&#39;name&#39;] // &#39;Bob&#39;을 출력
  b_dict[&#39;age&#39;] // 21을 출력

  b_dict[&#39;height&#39;] = 180 // 딕셔너리에 키:밸류 넣기
  b_dict // {name: &quot;Bob&quot;, age: 21, height: 180}을 출력</code></pre>
</li>
<li><p>리스트와 딕셔너리의 조합</p>
<pre><code class="language-jsx">  names = [{&#39;name&#39;:&#39;bob&#39;,&#39;age&#39;:20},{&#39;name&#39;:&#39;carry&#39;,&#39;age&#39;:38}]

  // names[0][&#39;name&#39;]의 값은? &#39;bob&#39;
  // names[1][&#39;name&#39;]의 값은? &#39;carry&#39;

  new_name = {&#39;name&#39;:&#39;john&#39;,&#39;age&#39;:7}
  names.push(new_name)

  // names의 값은? [{&#39;name&#39;:&#39;bob&#39;,&#39;age&#39;:20},{&#39;name&#39;:&#39;carry&#39;,&#39;age&#39;:38},{&#39;name&#39;:&#39;john&#39;,&#39;age&#39;:7}]
  // names[2][&#39;name&#39;]의 값은? &#39;john&#39;</code></pre>
</li>
<li><p>왜 필요할까요?</p>
  <aside>
  💡 **순서를 표시할 수 있고, 정보를 묶을 수 있습니다.**


</li>
</ul>
</li>
</ul>
<pre><code>    ✅보기에도 깔끔해지고, 다루기도 쉬워지고, 고객이 새로 한 명 더 오더라도 .push 함수를 이용해 간단하게 대응할 수 있습니다.

    &lt;/aside&gt;</code></pre><ul>
<li><p>기본 함수들</p>
<ul>
<li><p>사칙연산 외에도, 기본적으로 제공하는 여러 함수들이 존재합니다.</p>
  <aside>
  👉 왠지 이건 있을 것 같은데?(예 - 특정 문자를 바꾸고 싶다 등) 싶으면 직접 만들지 말고 **구글에 먼저 찾아보세요!**

  </aside>
</li>
</ul>
</li>
</ul>
]]></description>
        </item>
        <item>
            <title><![CDATA[Q3) 좌표찾아 007]]></title>
            <link>https://velog.io/@delog_lee/Q3-%EC%A2%8C%ED%91%9C%EC%B0%BE%EC%95%84-007</link>
            <guid>https://velog.io/@delog_lee/Q3-%EC%A2%8C%ED%91%9C%EC%B0%BE%EC%95%84-007</guid>
            <pubDate>Mon, 01 Mar 2021 06:19:14 GMT</pubDate>
            <description><![CDATA[<blockquote>
<p>Q) 좌표찾아 007, 마우스 움직임에 따라 좌표를 표시하도록 만들기</p>
</blockquote>
<p>A)</p>
<p><strong>HTML</strong></p>
<pre><code>&lt;!DOCTYPE html&gt;
&lt;html lang=&quot;en&quot;&gt;
  &lt;head&gt;
    &lt;meta charset=&quot;UTF-8&quot; /&gt;
    &lt;meta name=&quot;viewport&quot; content=&quot;width=device-width, initial-scale=1.0&quot; /&gt;
    &lt;title&gt;Coordinates&lt;/title&gt;
    &lt;script src=&quot;main.js&quot; defer&gt;&lt;/script&gt;
    &lt;link rel=&quot;stylesheet&quot; href=&quot;style.css&quot; /&gt;
  &lt;/head&gt;
  &lt;body&gt;
    &lt;div class=&quot;line horizontal&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;line vertical&quot;&gt;&lt;/div&gt;
    &lt;img class=&quot;target&quot; src=&quot;img/target.png&quot; alt=&quot;target&quot;&gt;
    &lt;span class=&quot;tag&quot;&gt;&lt;/span&gt;
  &lt;/body&gt;
&lt;/html&gt;
</code></pre><br>

<p><strong>CSS</strong></p>
<pre><code>body {
  background-color: black;
}

.line {
  position: absolute;
  background-color: white;
}

.horizontal {
  width: 100%;
  height: 1px;
  top: 50%;
}

.vertical {
  height: 100%;
  width: 1px;
  left: 50%;
}

.target {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.tag {
  color: white;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(20px, 20px);
  font-size: 38px;
}
</code></pre><br>

<p><strong>JavaScript</strong></p>
<pre><code>const vertical = document.querySelector(&#39;.vertical&#39;);
const horizontal = document.querySelector(&#39;.horizontal&#39;);
const target = document.querySelector(&#39;.target&#39;);
const tag = document.querySelector(&#39;.tag&#39;);

document.addEventListener(&#39;mousemove&#39;, event =&gt; {
    const x = event.clientX;
    const y = event.clientY;
    console.log(`${x} ${y}`);

    vertical.style.left = `${x}px`;
    horizontal.style.top = `${y}px`;
    target.style.left = `${x}px`;
    target.style.top = `${y}px`;
    tag.style.left = `${x}px`;
    tag.style.top = `${y}px`;
    tag.innerHTML = `${x}px, ${y}px`;
});</code></pre><p><img src="https://images.velog.io/images/delog_lee/post/000fc085-4fdb-4b91-be74-7142ffa958ca/3.PNG" alt=""></p>
]]></description>
        </item>
        <item>
            <title><![CDATA[Q2) Window 토끼를 찾아라]]></title>
            <link>https://velog.io/@delog_lee/Q2-Window-%ED%86%A0%EB%81%BC%EB%A5%BC-%EC%B0%BE%EC%95%84%EB%9D%BC</link>
            <guid>https://velog.io/@delog_lee/Q2-Window-%ED%86%A0%EB%81%BC%EB%A5%BC-%EC%B0%BE%EC%95%84%EB%9D%BC</guid>
            <pubDate>Mon, 01 Mar 2021 06:04:19 GMT</pubDate>
            <description><![CDATA[<blockquote>
<p>Q) 맨 상단의 버튼을 눌러 당근그림 사이에 있는 토끼로 이동하도록 만들어보기.</p>
</blockquote>
<p>A)</p>
<pre><code>&lt;!DOCTYPE html&gt;
&lt;html lang=&quot;en&quot;&gt;
  &lt;head&gt;
    &lt;meta charset=&quot;UTF-8&quot; /&gt;
    &lt;meta name=&quot;viewport&quot; content=&quot;width=device-width, initial-scale=1.0&quot; /&gt;
    &lt;title&gt;Scroll&lt;/title&gt;
    &lt;style&gt;
      body{
        background-color: black;
        text-align: center;
      }

      img{
        display: block;
        margin : auto;
      }

      button{
        background-color: lightcoral;
        color : white;
        outline: none;
        font-size: 32px;
        margin: 16px 0;
        cursor: pointer;
      }

    &lt;/style&gt;
  &lt;/head&gt;
  &lt;body&gt;
    &lt;button class=&quot;tag&quot;&gt;Find a rabbit&lt;/button&gt;
    &lt;img src=&quot;img/carrot.png&quot; alt=&quot;carrot&quot;&gt;
    &lt;img src=&quot;img/carrot.png&quot; alt=&quot;carrot&quot;&gt;
    &lt;img src=&quot;img/carrot.png&quot; alt=&quot;carrot&quot;&gt;
    &lt;img src=&quot;img/carrot.png&quot; alt=&quot;carrot&quot;&gt;
    &lt;img src=&quot;img/carrot.png&quot; alt=&quot;carrot&quot;&gt;
    &lt;img src=&quot;img/carrot.png&quot; alt=&quot;carrot&quot;&gt;
    &lt;img  id= &quot;rabbit&quot; src=&quot;img/rabbit.png&quot; alt=&quot;rabbit&quot;&gt;
    &lt;img src=&quot;img/carrot.png&quot; alt=&quot;carrot&quot;&gt;
    &lt;img src=&quot;img/carrot.png&quot; alt=&quot;carrot&quot;&gt;
    &lt;img src=&quot;img/carrot.png&quot; alt=&quot;carrot&quot; &gt;

    &lt;script&gt;
      const button = document.querySelector(&#39;button&#39;);
      const rabbit = document.querySelector(&#39;#rabbit&#39;);
      button.addEventListener(&#39;click&#39;, () =&gt; {
        rabbit.scrollIntoView({behavior: &#39;smooth&#39;, block: &#39;center&#39;});
      });
    &lt;/script&gt;
  &lt;/body&gt;
&lt;/html&gt;</code></pre><p><img src="https://images.velog.io/images/delog_lee/post/675144b9-e49f-4b68-ad9e-ce731d2e0b4b/2.PNG" alt=""></p>
<h3 id="scrollintoview"><strong>scrollIntoView()</strong></h3>
<p>Opitonal</p>
<p><strong>-<em>behavior Optional</em></strong>
전환에니메이션을 정의.
&quot;auto&quot;, &quot;smooth&quot;중 하나 선택. 기본값은 &quot;auto&quot;.</p>
<p><em><strong>-block Optional</strong></em>
수직 정렬을 정의
&quot;start&quot;, &quot;center&quot;, &quot;end&quot;, &quot;nearest&quot;중 하나 선택. 기본값은 &quot;start&quot;.</p>
<p><em><strong>-inline Optional</strong></em>
수평 정렬을 정함
One of &quot;start&quot;, &quot;center&quot;, &quot;end&quot;, &quot;nearest&quot;중 하나 선택. 기본값은 &quot;nearest&quot;.</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[Q1) Window-size]]></title>
            <link>https://velog.io/@delog_lee/Q1-Window-size</link>
            <guid>https://velog.io/@delog_lee/Q1-Window-size</guid>
            <pubDate>Sun, 28 Feb 2021 11:16:27 GMT</pubDate>
            <description><![CDATA[<p>Q1. Window-size 표기
screen/outer/inner을 이용하여 웹화면을 움직였을 때 사이즈가 변화됨을 나타내기.</p>
<p>A.</p>
<pre><code>&lt;!DOCTYPE html&gt;
&lt;html lang=&quot;en&quot;&gt;
&lt;head&gt;
    &lt;meta charset=&quot;UTF-8&quot;&gt;
    &lt;meta name=&quot;viewport&quot; content=&quot;width=device-width, initial-scale=1.0&quot;&gt;
    &lt;title&gt;Window Size&lt;/title&gt;
    &lt;style&gt;
        .tag{
            display: inline-block;
            background-color: thistle;
            padding: 16px;
            margin-top: 16px;
            font-size: 48px;
        }
    &lt;/style&gt;
&lt;/head&gt;
&lt;body&gt;
    &lt;div class=&quot;tag&quot;&gt;Window Size&lt;/div&gt;
    &lt;script&gt;
        const tag = document.querySelector(&#39;.tag&#39;);
        function updateTag() {
            tag.innerHTML = `
            window.screen: ${window.screen.width}, ${window.screen.height} &lt;/br&gt;
            window.outer: ${window.outerWidth}, ${window.outerheight} &lt;/br&gt;
            window.inner: ${window.innerWidth}, ${window.innerHeight} &lt;/br&gt;
            documentElement.clientWidth: ${document.documentElement.clientWidth}, ${document.documentElement.clientHeight} &lt;/br&gt;
            `;
        }
        window.addEventListener(&#39;resize&#39;, () =&gt; {
            updateTag();
        });
        updateTag();
    &lt;/script&gt;
&lt;/body&gt;
&gt; &lt;/html&gt;코드를 입력하세요</code></pre><p>result) 
<img src="https://images.velog.io/images/delog_lee/post/f62f6189-faa1-418e-9dc4-634745da019a/1.PNG" alt=""></p>
]]></description>
        </item>
        <item>
            <title><![CDATA[Web APIs-Browser]]></title>
            <link>https://velog.io/@delog_lee/Web-APIs-Browser</link>
            <guid>https://velog.io/@delog_lee/Web-APIs-Browser</guid>
            <pubDate>Sun, 28 Feb 2021 11:06:43 GMT</pubDate>
            <description><![CDATA[<p><strong>APIs</strong> (Application programming Interfaces)
(<a href="https://developer.mozilla.org/ko/docs/Web/API">https://developer.mozilla.org/ko/docs/Web/API</a>)</p>
<p><strong>* Web APIs Security</strong>
사용자의 권한 요청이나, HTTPs를 요구할 수 있음
(http는 암호화되지 않지만 https는 암호화됨)</p>
<br>

<p>-window.<em>screen</em> : 2560,1440
  -&gt;모니터의 해상도 즉 브라우저 바깥에 있는 아이들까지 다 합한 모니터 사이즈</p>
<p>-window.<em>outer</em> : 2560,1364
 -&gt; outer width, outer height은 브라우저에 있는 여기 url, 탭, 전체적인 브라우저의
사이즈</p>
<p>-window.<em>inner</em> : 2560,1285
-&gt;보고있는 웹페이지에서 수직으로 스크롤바가 표기되는 그 모든 것을 합한 전체
(url/탭 제외)</p>
<p>-documentElement.clientWidth:2560,1285
-&gt; 문서전체/ 스코롤바를 제외한 사이즈</p>
]]></description>
        </item>
    </channel>
</rss>