<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>js_son.log</title>
        <link>https://velog.io/</link>
        <description>python</description>
        <lastBuildDate>Thu, 17 Nov 2022 06:36:03 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <image>
            <title>js_son.log</title>
            <url>https://velog.velcdn.com/images/js_son/profile/4907fda9-14a8-43e3-b385-7c2478bcb239/image.jpg</url>
            <link>https://velog.io/</link>
        </image>
        <copyright>Copyright (C) 2019. js_son.log. All rights reserved.</copyright>
        <atom:link href="https://v2.velog.io/rss/js_son" rel="self" type="application/rss+xml"/>
        <item>
            <title><![CDATA[Bagging]]></title>
            <link>https://velog.io/@js_son/Bagging</link>
            <guid>https://velog.io/@js_son/Bagging</guid>
            <pubDate>Thu, 17 Nov 2022 06:36:03 GMT</pubDate>
            <description><![CDATA[<h1 id="✏-bagging">✏ Bagging</h1>
<h2 id="✅-배깅-정의">✅ 배깅 정의</h2>
<ul>
<li><strong>bootstrap aggregating</strong></li>
<li>주어진 데이터로부터 랜덤하게 여러 개의 부트스트랩 데이터를 모델링한 후 결합하여 최종의 예측 모델을 생성하는 <code>앙상블 기법</code> 중 하나</li>
</ul>
<hr>
<pre><code>🌟 앙상블 기법 (Ensemble)
- 여러 머신러닝 모델을 연결하여 더 강력한 모델을 만드는 기법
- 즉, 여러 개의 약 분류기를 결합하여 강 분류기를 만드는 것
- 앙상블 기법을 이용한 대표적인 모델은 랜덤포레스트와 그래디언트 부스팅이 있음

앙상블 종류
1. 배깅(bagging)
2. 부스팅(boosting)
3. 스태킹(staking)</code></pre><hr>
<ul>
<li>각 모델별 임의의 데이터 세트 생성 시 기존 데이터 세트에서 <code>중복을 허용</code>한 채로 무작위 N개를 선택하여 생성</li>
<li>데이터로부터 <code>부트스트랩</code>을 한 후, 부트스트랩한 데이터로 모델을 학습시킨다. 그리고 학습된 모델의 결과를 집계(평균 또는 투표방식 활용)하여 최종 결과 값을 구한다.</li>
</ul>
<hr>
<pre><code>🌟 부트스트랩 (Bootstrap)

- 유한표본 또는 작은 표본에서 표본 추출과 통계치 계산의 과정을 반복함으로써
  주어진 통계량의 유한표본분포를 구하는 방법

- 표본의 크기가 항상 크기를 기대할 수는 없다. 따라서 이때 표본평균을 정규분포에 근사시키는 방법으로 사용하는 것이 바로 부트스트랩

✔️ 중복을 허용하지 않고 샘플링하는 방식도 있는데, 이를 **페이스팅**이라고 한다.</code></pre><hr>
<p><img src="https://velog.velcdn.com/images/js_son/post/ee9b1c79-8217-4a91-adc4-0c56481674f0/image.png" alt=""></p>
<ul>
<li>하늘색, 빨간색, 파란색으로 색칠된 도형들은 각 Bootstrap에 포함된 데이터를 의미하고, 각 그래프의 실선은 학습 모델의 분류 경계선을 나타낸다.</li>
</ul>
<p><img src="https://velog.velcdn.com/images/js_son/post/de45611d-2d21-4ac4-9122-16a055367a2a/image.png" alt=""></p>
<p>개별 모델들의 분류 경계선은 전체 데이터의 관점에서는 정확도가 떨어지지만, 이를 결합한 모델(왼쪽 하단의 그래프)은 전체 데이터의 분포에 대해서 좀 더 정확한 분류 경계선을 갖는 것을 확인 할 수 있다.</p>
<h2 id="✅-배깅의-목적">✅ 배깅의 목적</h2>
<ul>
<li>예측 모형의 변동성이 큰 경우, 해당 <code>변동성을 감소</code>시키기 위해 사용</li>
<li>원 자료로부터 여러 번의 <code>복원 샘플링</code>을 통해 예측 모형의 분산을 최소화하여 <code>예측력 향상</code></li>
</ul>
<h2 id="✅-배깅의-절차">✅ 배깅의 절차</h2>
<p>1) Rawdata에서 bootstrap 데이터 추출</p>
<p>2) 추출을 반복하여 n개의 데이터 생성</p>
<p>3) 데이터를 각각 모델링하여 모델 생성</p>
<p>4) 단일 모델을 결합하여 배깅 모델 생성</p>
<h2 id="✅-배깅의-특징">✅ 배깅의 특징</h2>
<ul>
<li>과적합된 모형, 편의가 작고 분산이 큰 모형에 적합</li>
<li><code>병렬</code> 학습함</li>
<li>여러 개의 모델이 <code>독립적</code></li>
<li>범주형 데이터는 <code>투표 방식(Votinig)</code>으로 결과를 집계하며, 연속형 데이터는 <code>평균</code>으로 집계함</li>
</ul>
<h2 id="🔍-배깅의-대표적인-예시-random-forest">🔍 배깅의 대표적인 예시: Random Forest</h2>
<p><img src="https://velog.velcdn.com/images/js_son/post/ac27d4b1-5cc2-4d6e-8a1e-adf6b9717fef/image.png" alt=""></p>
<ul>
<li><p><strong>앙상블 기법(Ensemble)</strong> 의 일종으로 다수의 결정 트리들을 학습하여 검출, 분류, 그리고 회귀 등 다양한 문제에 활용하는 기법</p>
</li>
<li><p>배깅 모형의 문제는 동일한 데이터셋에서 복원추출로 만든 데이터 셋 B개가 서로 상관관계가 존재해서 B개의 트리 모형도 상관관계를 갖게 되고, 공분산이 존재하게 되어서 예측력이 떨어질 수 있다는 것이었다. 👉 <strong>이 공분산을 줄이기 위해 랜덤 포레스트는 트리를 그릴때 모든 변수를 다 사용하지 않는다.</strong></p>
</li>
<li><p><strong>랜덤포레스트의 주요 파라미터</strong></p>
<p>  <strong>n_estimators</strong>: 트리를 몇 개 만들 것인지 (int, default=100), 값이 클수록 오버피팅 방지</p>
<p>  <strong>criterion</strong>: gini 또는 entropy 중 선택</p>
<p>  <strong>max_depth</strong>: 트리의 깊이 (int, default=None)</p>
<p>  <strong>bootstrap</strong>: True이면 전체 feature에서 복원추출해서 트리 생성 (default=True)</p>
<p>  <strong>max_features</strong>: 선택할 feature의 개수, 보통 default값으로 씀 (default=&#39;auto&#39;)</p>
</li>
</ul>
<h2 id="✅-배깅의-장점">✅ 배깅의 장점</h2>
<ul>
<li>편향은 그대로 유지하면서 분산은 감소시키기 때문에 <code>성능을 향상</code>시킴</li>
</ul>
<hr>
<pre><code>🌟 랜덤포레스트와 의사결정 트리를 예시로 설명하면, 한 개의 결정트리의 경우 훈련 데이터에 있는 노이즈에 대해서 매우 민감하지만, 트리들이 서로 상관화 되어 있지 않다면 여러 트리들의 평균은 노이즈에 대해 강인하다.</code></pre><hr>
<ul>
<li>배깅에서 사용할 수 있는 기본 학습기의 종류에는 제한이 없음</li>
</ul>
<hr>
<pre><code>🌟 분류문제에서 DT 이외에도 로지스틱회귀 모형을 사용해도 좋고, 회귀문제에서 선형 회귀모형이나 knn방법을 써도 좋다.</code></pre><hr>
<ul>
<li>별도의 검증데이터 없이 데이터를 Hyper Parameter 최적화나 성능검증에 활용 가능</li>
<li>어렵지 않은 구현</li>
<li>불안정한 모형일수록 빛을 발하는 성능</li>
</ul>
<h2 id="✅-배깅의-단점">✅ 배깅의 단점</h2>
<ul>
<li><code>해석</code>이 다소 어려움</li>
<li>항상 성능 향상을 보장하는 것은 아님</li>
</ul>
<hr>
<h3 id="🧚🏻♀️-참고자료">🧚🏻‍♀️ 참고자료</h3>
<ul>
<li><strong>tistory</strong></li>
</ul>
<p><a href="https://dbrang.tistory.com/1394">배깅(bagging)의 이해</a></p>
<p><a href="https://for-my-wealthy-life.tistory.com/15">랜덤 포레스트 원리와 구현 사이킷런 예제로 코드 실습해보기</a></p>
<p><a href="https://sungkee-book.tistory.com/9">[머신러닝] 앙상블 학습 - 2) Bagging</a></p>
<p><a href="https://bkshin.tistory.com/entry/%EB%A8%B8%EC%8B%A0%EB%9F%AC%EB%8B%9D-11-%EC%95%99%EC%83%81%EB%B8%94-%ED%95%99%EC%8A%B5-Ensemble-Learning-%EB%B0%B0%EA%B9%85Bagging%EA%B3%BC-%EB%B6%80%EC%8A%A4%ED%8C%85Boosting">머신러닝 - 11. 앙상블 학습 (Ensemble Learning): 배깅(Bagging)과 부스팅(Boosting)</a></p>
<p><a href="https://zephyrus1111.tistory.com/245">23. 배깅(Bagging)에 대해서 알아보자</a></p>
<p><a href="https://data-analysis-science.tistory.com/61">1. 앙상블(Ensemble) 기법과 배깅(Bagging), 부스팅(Boosting), 스태킹(Stacking)</a></p>
<p><a href="https://nicola-ml.tistory.com/96">머신러닝 강좌 #15 랜덤 포레스트 (Random Forest)</a></p>
<ul>
<li><strong>naver 블로그</strong></li>
</ul>
<p><a href="https://blog.naver.com/spiderman25/222507708101">ML / DL : 네이버 블로그</a></p>
]]></description>
        </item>
        <item>
            <title><![CDATA[One-Hot Encoding]]></title>
            <link>https://velog.io/@js_son/One-Hot-Encoding</link>
            <guid>https://velog.io/@js_son/One-Hot-Encoding</guid>
            <pubDate>Thu, 10 Nov 2022 07:45:45 GMT</pubDate>
            <description><![CDATA[<h1 id="🦁-til">🦁 TIL</h1>
<h1 id="👩🏻🔧-one-hot-encoding">👩🏻‍🔧 One-Hot Encoding</h1>
<h2 id="✅-정의">✅ 정의</h2>
<ul>
<li>단어 집합의 크기를 벡터의 차원으로 하고, 표현하고 싶은 단어의 인덱스에 1의 값을 부여하고, 다른 인덱스에는 0을 부여하는 단어의 벡터 표현 방식</li>
<li><strong>한 개의 요소는 True, 나머지 요소는 False로 만들어주는 기법</strong><ul>
<li><strong><code>순서가 없는 데이터</code></strong>에 사용</li>
<li>해당 관계는 <code>**독립적**</code>임을 표현</li>
<li>흩어져있을 뿐 모든 정보 유지</li>
</ul>
</li>
</ul>
<h2 id="✅-필요성">✅ 필요성</h2>
<ul>
<li>scikit-learn에서 제공하는 머신러닝 알고리즘은 문자열 값을 입력 값으로 허락하지 않기 때문에 모든 문자열 값들을 숫자형으로 인코딩하는 전처리 작업 후에 머신러닝 모델에 학습</li>
</ul>
<h2 id="✅-한계">✅ 한계</h2>
<ul>
<li><strong>해당 Feature에 너무 많은 고유값이 있는 경우 Feature가 지나치게 많아짐</strong><ul>
<li>필요한 저장공간도 늘어나게 됨</li>
</ul>
</li>
<li><strong>단어의 <code>유사도</code>를 표현하지 못함</strong><ul>
<li>[늑대, 호랑이, 강아지, 고양이]라는 4개의 단어에 대해 원-핫 인코딩을 했을 때
강아지와 늑대가 유사하고, 호랑이와 고양이가 유사하다는 것을 표현할 수 없음</li>
<li>여행 숙소 예약을 위해 ‘삿포로 숙소’라는 단어를 검색할 때
제대로 된 검색 시스템일 경우 [삿포로 게스트 하우스, 삿포로 호텔] 등과 같은
유사 단어의 결과도 보여줄 수 있어야 하지만, 유사성을 계산하지 못할 경우
연관 검색어를 보여줄 수 없음</li>
</ul>
</li>
</ul>
<h2 id="✅-방법">✅ 방법</h2>
<h3 id="1️⃣-pandas---get_dummies">1️⃣ Pandas - get_dummies</h3>
<pre><code class="language-python">pd.get_dummies(data[&#39;Embarked&#39;], prefix = &#39;Embarked&#39;)</code></pre>
<p>🌟 <strong><code>prefix</code>를 활용하여 컬럼을 좀 더 명시적으로 표현 가능</strong></p>
<hr>
<p>prefix 적용 전
<img src="https://velog.velcdn.com/images/js_son/post/f787470a-0f1c-4531-96ca-819816ebbd75/image.png" alt="prefix 적용 전"></p>
<hr>
<p>prefix 적용 후
<img src="https://velog.velcdn.com/images/js_son/post/968ae060-e103-479f-8c27-a2c829767a49/image.png" alt="prefix 적용 후"></p>
<hr>
<h3 id="2️⃣-sklearn---onehotencoder">2️⃣ sklearn - OneHotEncoder</h3>
<pre><code class="language-python">from sklearn.preprocessing import OneHotEncoder

enc = OneHotEncoder()

X = [[&#39;male&#39;, &#39;from US&#39;, &#39;uses Safari&#39;],
     [&#39;female&#39;, &#39;from Europe&#39;, &#39;uses Firefox&#39;]]

enc.fit(X)
enc_out = enc.transform([[&#39;female&#39;, &#39;from US&#39;, &#39;uses Safari&#39;],
               [&#39;male&#39;, &#39;from Europe&#39;, &#39;uses Safari&#39;]]).toarray()

=&gt;[[1. 0. 0. 1. 0. 1.]
   [0. 1. 1. 0. 0. 1.]]
------------------------------------------------------------------------------------
enc.get_feature_names_out()

=&gt; [&#39;x0_female&#39; &#39;x0_male&#39; &#39;x1_from Europe&#39; &#39;x1_from US&#39; &#39;x2_uses Firefox&#39;
    &#39;x2_uses Safari&#39;]
------------------------------------------------------------------------------------
pd.DataFrame(enc_out, columns=enc.get_feature_names_out())
↓</code></pre>
<p><img src="https://velog.velcdn.com/images/js_son/post/57e53c51-bed8-4680-9f41-269cd33fb121/image.png" alt="Untitled"></p>
<h3 id="🔗-참고-자료">🔗 참고 자료</h3>
<ul>
<li><strong>scikit-learn 공식 문서</strong></li>
</ul>
<p><a href="https://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.OneHotEncoder.html">scikit-learn</a></p>
<ul>
<li><strong>wikidocs - 딥 러닝을 이용한 자연어 처리 입문</strong></li>
</ul>
<p><a href="https://wikidocs.net/22647">점프 투 파이썬</a></p>
<ul>
<li><strong>블로그</strong></li>
</ul>
<p><a href="https://growthj.link/python-%EC%9B%90-%ED%95%AB-%EC%9D%B8%EC%BD%94%EB%94%A9one-hot-encoding-%EC%A0%95%EB%A6%AC-get_dummies/">growthj.link</a></p>
]]></description>
        </item>
        <item>
            <title><![CDATA[<머신러닝을 위한 파이썬> Pythonic Code #3]]></title>
            <link>https://velog.io/@js_son/%EB%A8%B8%EC%8B%A0%EB%9F%AC%EB%8B%9D%EC%9D%84-%EC%9C%84%ED%95%9C-%ED%8C%8C%EC%9D%B4%EC%8D%AC-Pythonic-Code-3</link>
            <guid>https://velog.io/@js_son/%EB%A8%B8%EC%8B%A0%EB%9F%AC%EB%8B%9D%EC%9D%84-%EC%9C%84%ED%95%9C-%ED%8C%8C%EC%9D%B4%EC%8D%AC-Pythonic-Code-3</guid>
            <pubDate>Thu, 03 Nov 2022 08:40:25 GMT</pubDate>
            <description><![CDATA[<p><img src="https://velog.velcdn.com/images/js_son/post/81a50ee7-8003-4f42-bec8-395a043ebcd8/image.png" alt=""></p>
<h1 id="list-comprehension">List Comprehension</h1>
<ul>
<li>기존 List를 사용하여 간단히 다른 List를 만드는 기법</li>
<li>포괄적인 List, 포함되는 List라는 의미로 사용됨</li>
<li>파이썬에서 가장 많이 사용되는 기법 중 하나</li>
<li>일반적으로 for + append 보다 속도가 빠름</li>
</ul>
<hr>
<h2 id="one-dimensional-list">One dimensional List</h2>
<h3 id="-1">### 1</h3>
<pre><code class="language-python"># for + append 사용
result = []
for i in range(10):
    result.append(i)

print(result)
=&gt; [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]


# List Comprehension 사용
result = [i for i in range(10)]
print(result)
=&gt; [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

# 필터
result = [i for i in range(10) if i % 2 == 0]
print(result)
=&gt; [0, 2, 4, 6, 8]</code></pre>
<h3 id="-2">### 2</h3>
<p> <strong>Nested For loop</strong></p>
<pre><code class="language-python">word_1 = &quot;Hello&quot;
word_2 = &quot;World&quot;
result = [i+j for i in word_1 for j in word_2]

print(result)
=&gt; [&#39;HW&#39;, &#39;Ho&#39;, &#39;Hr&#39;, &#39;Hl&#39;, &#39;Hd&#39;,
&#39;eW&#39;, &#39;eo&#39;, &#39;er&#39;, &#39;el&#39;, &#39;ed&#39;,
&#39;lW&#39;, &#39;lo&#39;, &#39;lr&#39;, &#39;ll&#39;, &#39;ld&#39;,
&#39;lW&#39;, &#39;lo&#39;, &#39;lr&#39;, &#39;ll&#39;, &#39;ld&#39;,
&#39;oW&#39;, &#39;oo&#39;, &#39;or&#39;, &#39;ol&#39;, &#39;od&#39;]</code></pre>
<h3 id="-3">### 3</h3>
<p>** Nested For loop + filter**</p>
<pre><code class="language-python"># Nested For loop
case_1 = [&quot;A&quot;,&quot;B&quot;,&quot;C&quot;]
case_2 = [&quot;D&quot;,&quot;E&quot;,&quot;A&quot;]
result = [i+j for i in case_1 for j in case_2]

print(result)
=&gt; [&#39;AD&#39;, &#39;AE&#39;, &#39;AA&#39;, &#39;BD&#39;, &#39;BE&#39;, &#39;BA&#39;, &#39;CD&#39;, &#39;CE&#39;, &#39;CA&#39;]

# Nested For loop + filter
# Filter: i랑 j과 같다면 List에 추가하지 않음
result = [i+j for i in case_1 for j in case_2 if not(i==j)]

print(result)
=&gt; [&#39;AD&#39;, &#39;AE&#39;, &#39;BD&#39;, &#39;BE&#39;, &#39;BA&#39;, &#39;CD&#39;, &#39;CE&#39;, &#39;CA&#39;]

result.sort()
print(result)
=&gt; [&#39;AD&#39;, &#39;AE&#39;, &#39;BA&#39;, &#39;BD&#39;, &#39;BE&#39;, &#39;CA&#39;, &#39;CD&#39;, &#39;CE&#39;]</code></pre>
<hr>
<h2 id="two-dimensional-list">Two dimensional List</h2>
<h3 id="-4">### 4</h3>
<pre><code class="language-python"># 문장을 빈칸 기준으로 나눠 list로 변환
words = &#39;The quick brown fox jumps over the lazy dog&#39;.split()

print (words)
=&gt; [&#39;The&#39;, &#39;quick&#39;, &#39;brown&#39;, &#39;fox&#39;, &#39;jumps&#39;, &#39;over&#39;, &#39;the&#39;, &#39;lazy&#39;, &#39;dog&#39;]


# list의 각 elemente들을 대문자, 소문자, 길이로 변환하여 two dimensional list로 변환
stuff = [[w.upper(), w.lower(), len(w)] for w in words]

for i in stuff:
    print (i)

[&#39;THE&#39;, &#39;the&#39;, 3]
[&#39;QUICK&#39;, &#39;quick&#39;, 5]
[&#39;BROWN&#39;, &#39;brown&#39;, 5]
[&#39;FOX&#39;, &#39;fox&#39;, 3]
[&#39;JUMPS&#39;, &#39;jumps&#39;, 5]
[&#39;OVER&#39;, &#39;over&#39;, 4]
[&#39;THE&#39;, &#39;the&#39;, 3]
[&#39;LAZY&#39;, &#39;lazy&#39;, 4]
[&#39;DOG&#39;, &#39;dog&#39;, 3]</code></pre>
]]></description>
        </item>
        <item>
            <title><![CDATA[<머신러닝을 위한 파이썬> Pythonic Code #2]]></title>
            <link>https://velog.io/@js_son/%EB%A8%B8%EC%8B%A0%EB%9F%AC%EB%8B%9D%EC%9D%84-%EC%9C%84%ED%95%9C-%ED%8C%8C%EC%9D%B4%EC%8D%AC-Pythonic-Code-2</link>
            <guid>https://velog.io/@js_son/%EB%A8%B8%EC%8B%A0%EB%9F%AC%EB%8B%9D%EC%9D%84-%EC%9C%84%ED%95%9C-%ED%8C%8C%EC%9D%B4%EC%8D%AC-Pythonic-Code-2</guid>
            <pubDate>Thu, 03 Nov 2022 08:15:37 GMT</pubDate>
            <description><![CDATA[<p><img src="https://velog.velcdn.com/images/js_son/post/247247fd-b5e7-4d2a-8b78-8b3d000f9c70/image.png" alt=""></p>
<h1 id="split--join">Split &amp; Join</h1>
<h2 id="⭐-split">⭐ Split</h2>
<p>String Type의 값을 나눠서 List 형태로 변환</p>
<pre><code class="language-python"># 빈칸을 기준으로 문자열 나누기
items = &#39;zero one two three&#39;.split()
print(items)
=&gt; [&#39;zero&#39;, &#39;one&#39;, &#39;two&#39;, &#39;three&#39;]


# &#39;,&#39;을 기준으로 문자열 나누기
example = &#39;python,jquery,javascript&#39;
example.split(&#39;,&#39;)
=&gt; [&#39;python&#39;, &#39;jquery&#39;, &#39;javascript&#39;]

# 리스트에 있는 각 값을 a,b,c 변수로 unpacking
a, b, c = example.split(&#39;,&#39;)</code></pre>
<h2 id="⭐-join">⭐ Join</h2>
<p>String List를 합쳐 하나의 String으로 반환할 때 사용</p>
<pre><code class="language-python"># 문자열 합치기
colors = [&#39;red&#39;, &#39;blue&#39;, &#39;green&#39;, &#39;yellow&#39;]
result = &#39;&#39;.join(colors)
=&gt; &#39;redbluegreenyellow&#39;

# 연결 시 빈칸 1칸으로 연결
result = &#39; &#39;.join(colors)
=&gt; &#39;red blue green yellow&#39;

# 연결 시 &#39;, &#39;으로 연결
result = &#39;, &#39;.join(colors)
=&gt; &#39;red, blue, green, yellow&#39;

# 연결 시 &#39;-&#39;으로 연결
result = &#39;-&#39;.join(colors)
=&gt; &#39;red-blue-green-yellow&#39;</code></pre>
]]></description>
        </item>
        <item>
            <title><![CDATA[<머신러닝을 위한 파이썬> Pythonic Code #1]]></title>
            <link>https://velog.io/@js_son/%EB%A8%B8%EC%8B%A0%EB%9F%AC%EB%8B%9D%EC%9D%84-%EC%9C%84%ED%95%9C-%ED%8C%8C%EC%9D%B4%EC%8D%AC-Pythonic-Code-1</link>
            <guid>https://velog.io/@js_son/%EB%A8%B8%EC%8B%A0%EB%9F%AC%EB%8B%9D%EC%9D%84-%EC%9C%84%ED%95%9C-%ED%8C%8C%EC%9D%B4%EC%8D%AC-Pythonic-Code-1</guid>
            <pubDate>Thu, 03 Nov 2022 07:42:41 GMT</pubDate>
            <description><![CDATA[<p><img src="https://velog.velcdn.com/images/js_son/post/14418ce9-a587-4002-8fed-fed97cb409cb/image.png" alt=""></p>
<h1 id="overview">Overview</h1>
<h2 id="⭐-pythonic-code">⭐ Pythonic Code</h2>
<p>다른 사람의 코드를 잘 이해하기 위해 파이썬 특유의 문법을 활용하여 효율적으로 코드를 표현하는 기법</p>
<hr>
<pre><code class="language-python"># 일반 코드

colors = [&quot;a&quot;, &quot;b&quot;, &quot;c&quot;, &quot;d&quot;, &quot;e&quot;]
result = &quot;&quot;

for s in colors:
    result += s

print(result)</code></pre>
<hr>
<pre><code class="language-python"># pythonic code

colors = [&quot;a&quot;, &quot;b&quot;, &quot;c&quot;, &quot;d&quot;, &quot;e&quot;]
result = &quot;&quot;.join(colors)

print(result)</code></pre>
<hr>
<h3 id="🤷❓-why-pythonic-code">🤷‍❓ Why Pythonic Code</h3>
<ol>
<li>다른 사람 코드에 대한 이해도
 : 많은 개발자들이 python 스타일로 코딩</li>
<li>효율
 : 단순 for loop append보다 list가 조금 더 빠름, 익숙해지면 코드도 짧아짐</li>
</ol>
]]></description>
        </item>
        <item>
            <title><![CDATA[# 머신러닝 1]]></title>
            <link>https://velog.io/@js_son/%EB%A8%B8%EC%8B%A0%EB%9F%AC%EB%8B%9D1</link>
            <guid>https://velog.io/@js_son/%EB%A8%B8%EC%8B%A0%EB%9F%AC%EB%8B%9D1</guid>
            <pubDate>Thu, 27 Oct 2022 08:25:52 GMT</pubDate>
            <description><![CDATA[<p><img src="https://velog.velcdn.com/images/js_son/post/ddae20d2-28b4-4ee0-8158-8e7be4de7e14/image.png" alt=""></p>
<h2 id="빅데이터">빅데이터</h2>
<ul>
<li>가치를 추출하고 결과를 분석</li>
<li>sensor network + digital transformation + hardware evolution</li>
<li>빅데이터를 통해 IoT, 클라우드, 머신러닝 기술이 상호 협력</li>
</ul>
<h3 id="머신러닝">머신러닝</h3>
<ul>
<li><p>데이터라는 디지털 자료를 바탕으로 수행하는 분석 방식</p>
</li>
<li><p>빅 데이터를 분석할 수 있는 강력한 툴</p>
</li>
<li><p>기존 통계학 및 시각화 방법의 한계를 해결</p>
</li>
<li><p>예측, 패턴 파악, 추천 시스템 등</p>
</li>
<li><p>명시적으로 프로그래밍을 하지 않고도 컴퓨터가 학습할 수 있는 능력을 갖게 하는 것</p>
<ul>
<li>명시적 프로그래밍 : 데이터별로 케이스를 나눠 경우에 따라 행동하게 함</li>
<li>머신 러닝 : 데이터가 들어왔을 때 학습이라는 과정을 통해 직접 배우도록 함</li>
</ul>
</li>
<li><p>머신러닝 기법 </p>
<ul>
<li>지도학습 : 예측해야 할 결과에 대한 <code>정답 데이터가 있다</code><ul>
<li>회귀분석(Regression)</li>
<li>분류(Classification)</li>
</ul>
</li>
<li>비지도학습 : 예측해야 할 결과에 대한 <code>정답 데이터가 없다</code></li>
<li>강화학습 : 학습을 수행하기 위한 데이터가 없어도 학습,기계가 스스로 학습할 데이터를 만들어내고 이 데이터를 바탕으로 스스로 학습<ul>
<li>ex. 알파고 최신 모델 (기존 알파고는 지도학습 모델)</li>
</ul>
</li>
</ul>
</li>
<li><p>자료의 형태</p>
<ul>
<li>수치형 자료(Numerical data)<ul>
<li>양적 자료(Quantitative data)</li>
<li>수치로 측정이 가능한 자료</li>
<li>ex. 키, 몸무게, 시험 점수, 나이 등</li>
</ul>
</li>
<li>범주형 자료(Categorical data)<ul>
<li>질적 자료(Qualitative data)</li>
<li>수치로 측정이 불가능한 자료</li>
<li>ex. 성별, 지역, 혈액형 등</li>
</ul>
</li>
</ul>
</li>
</ul>
<h2 id="자료의-요약">자료의 요약</h2>
<h3 id="범주형-자료의-요약">범주형 자료의 요약</h3>
<ul>
<li>필요성<ul>
<li>다수의 범주가 반복해서 관측</li>
<li>관측값의 크기보다 포함되는 범주에 관심</li>
</ul>
</li>
<li>절차<ol>
<li>각 범주에 속하는 관측값의 개수 측정</li>
<li>전체에서 차지하는 각 범주의 비율 파악</li>
<li>효율적으로 범주 간의 차이점 비교 가능</li>
</ol>
</li>
<li>도수분포표(Frequency Table)<ul>
<li>범주형 자료에서 범주와 그 범주에 대응하는 도수, 상대도수를 나열해 표로 만든 것</li>
</ul>
</li>
<li>도수(Frequency)<ul>
<li>value_counts()</li>
<li>각 범주에 속하는 관측값에 개수</li>
<li>범주에 해당하는 대상(인원)</li>
</ul>
</li>
<li>상대도수(Relative Frequency)<ul>
<li>value_counts(normalize=True)</li>
<li>도수를 자료의 전체 개수로 나눈 비율</li>
<li>도수 / 100</li>
</ul>
</li>
<li>누적 상대도수<ul>
<li>첫번째 상대도수부터 그 아래 상대도수를 쭉 더한값</li>
<li>연속되어있는 여러 범주의 상대도수를 알기 위함</li>
</ul>
</li>
</ul>
<h3 id="수치형-자료의-요약">수치형 자료의 요약</h3>
<ul>
<li><p>특징</p>
<ul>
<li><p>수치로 구성되어 통계값을 사용한 요약 가능</p>
</li>
<li><p>시각적 자료로는 이론적 근거 제시가 쉽지 않다는 단점 보완</p>
<p>⇒ 많은 양의 자료를 의미 있는 수치(통계값)로 요약하여 대략적인 분포상태 파악 가능</p>
</li>
</ul>
</li>
<li><p>평균 (Mean)</p>
<ul>
<li>np.mean()</li>
<li>관측값들을 대표할 수 있는 통계값</li>
<li>수치형 자료의 통계값 중 기초적인 통계 수치로 가장 많이 사용되는 방법</li>
<li>극단적으로 큰 값이나 작은 값의 영향을 많이 받음</li>
<li>모든 관측값의 합을 자료의 개수로 나눈 것 (산술평균)</li>
</ul>
</li>
</ul>
<ul>
<li><p>퍼진 정도의 측도</p>
<ul>
<li><p>평균만으로 분포를 파악하기엔 부족</p>
</li>
<li><p><strong>분산</strong></p>
<ul>
<li><p>variance()</p>
<pre><code class="language-python">from statistics import variance
variance()</code></pre>
</li>
<li><p>자료가 얼마나 흩어졌는지 숫자로 표현</p>
</li>
<li><p>각 관측값이 자료의 평균으로부터 떨어진 정도</p>
</li>
<li><p>분산값이 클수록 그래프가 퍼짐</p>
</li>
</ul>
</li>
<li><p><strong>표준편차</strong></p>
<ul>
<li><p>stdev()</p>
<pre><code class="language-python">from statistics import stdev
stdev()</code></pre>
</li>
<li><p>분산의 단위 = 관측값의 단위의 제곱</p>
<ul>
<li>관측값의 단위와 불일치</li>
</ul>
</li>
<li><p><code>분산의 양의 제곱근</code></p>
<ul>
<li>양의 제곱근을 구해야 관측값의 단위와 일치 시킬 수 있음</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
]]></description>
        </item>
        <item>
            <title><![CDATA[[Seaborn] relplot]]></title>
            <link>https://velog.io/@js_son/Seaborn-relplot-j7g91ipm</link>
            <guid>https://velog.io/@js_son/Seaborn-relplot-j7g91ipm</guid>
            <pubDate>Thu, 29 Sep 2022 09:03:31 GMT</pubDate>
            <description><![CDATA[<p><img src="https://velog.velcdn.com/images/js_son/post/a3459d89-775a-4a47-bdb3-9eb2ffc27180/image.png" alt=""></p>
<h1 id="seaborn">Seaborn</h1>
<ul>
<li>파이썬의 대표적인 시각화 도구 : matplotlib, seaborn</li>
<li>파이썬 데이터 시각화 라이브러리 중 하나</li>
<li>matplotlib을 기반으로 다양한 색상 테마와 통계용 차트 등의 기능을 추가한 시각화 패키지</li>
<li>다양한 종류의 plot을 제공</li>
</ul>
<p><img src="https://velog.velcdn.com/images/js_son/post/d918246e-b2d8-4171-9f4d-1c18bc7ecea7/image.png" alt=""></p>
<hr>
<p><img src="https://velog.velcdn.com/images/js_son/post/6082b86d-1594-4fab-8a26-c4792313c78c/image.png" alt=""></p>
<h2 id="scatterplot">scatterplot</h2>
<ul>
<li>산점도 그래프</li>
<li>두 변수간 공통적인 분포 묘사</li>
<li>수치형 데이터의 상관관계를 볼 때 사용</li>
</ul>
<p>❓ 산점도
데이터를 기반으로 형성된 점들의 뭉치
<img src="https://velog.velcdn.com/images/js_son/post/a0eabe02-2ef1-4db2-8e5e-5f5b402ed6e1/image.png" alt=""></p>
<h2 id="lineplot">lineplot</h2>
<ul>
<li>선 그래프</li>
<li>지속성을 강조하는 기법</li>
<li>기간, 연도 등 변화의 폭이나 흐름을 볼 때 사용</li>
</ul>
<p><img src="https://velog.velcdn.com/images/js_son/post/d3289697-23a7-4651-bca6-4df0627a2d01/image.png" alt=""></p>
<h2 id="relplot">relplot</h2>
<ul>
<li>scatterplot과 lineplot의 상위 개념 =&gt; 두 함수를 모두 포함</li>
<li>그래프 형식의 기본값 : scatter<ul>
<li>kind option을 통해 그래프 종류 지정</li>
</ul>
</li>
<li>각 값들의 관계를 나타낼 때 사용
<img src="https://velog.velcdn.com/images/js_son/post/fa09703c-376e-4a52-934f-2435f360ec80/image.png" alt=""></li>
</ul>
<hr>
<ul>
<li>참조 
<a href="http://seaborn.pydata.org/generated/seaborn.relplot.html">http://seaborn.pydata.org/generated/seaborn.relplot.html</a>
<a href="http://seaborn.pydata.org/generated/seaborn.scatterplot.html">http://seaborn.pydata.org/generated/seaborn.scatterplot.html</a>
<a href="http://seaborn.pydata.org/generated/seaborn.lineplot.html">http://seaborn.pydata.org/generated/seaborn.lineplot.html</a></li>
</ul>
]]></description>
        </item>
        <item>
            <title><![CDATA[[Python] 파이썬의 특징과 자료형 (숫자형 + 문자형)]]></title>
            <link>https://velog.io/@js_son/Python-%ED%8C%8C%EC%9D%B4%EC%8D%AC%EC%9D%98-%ED%8A%B9%EC%A7%95%EA%B3%BC-%EC%9E%90%EB%A3%8C%ED%98%95-%EC%88%AB%EC%9E%90%ED%98%95-%EB%AC%B8%EC%9E%90%ED%98%95</link>
            <guid>https://velog.io/@js_son/Python-%ED%8C%8C%EC%9D%B4%EC%8D%AC%EC%9D%98-%ED%8A%B9%EC%A7%95%EA%B3%BC-%EC%9E%90%EB%A3%8C%ED%98%95-%EC%88%AB%EC%9E%90%ED%98%95-%EB%AC%B8%EC%9E%90%ED%98%95</guid>
            <pubDate>Thu, 22 Sep 2022 08:55:06 GMT</pubDate>
            <description><![CDATA[<p><img src="https://velog.velcdn.com/images/js_son/post/20881101-0f99-41b7-9392-ae3e6b4d66c0/image.png" alt=""></p>
<h3 id="파이썬이란">파이썬이란?</h3>
<p>1990년 귀도 반 로섬이 개발한 인터프리터 언어이다.
좋아하는 코미디 쇼인 &quot;몬티 파이썬의 날아다니는 서커스&quot;에서 이름을 따왔다.</p>
<p>❓ 인터프리터 언어
한 줄씩 소스 코드를 해석하고 실행해 결과를 바로 확인할 수 있는 언어</p>
<h2 id="파이썬의-특징">파이썬의 특징</h2>
<ul>
<li>간결하다.</li>
<li>문법이 쉬워 빠르게 배울 수 있다.
=&gt; 사람의 사고 체계와 매우 닮아 있다.</li>
<li>개발 속도가 빠르다.</li>
<li>다양한 패키지가 제공되어 생산성이 높다.</li>
</ul>
<p>❓ 패키지
특정 기능을 미리 만들어 놓은 것으로 활용하면 코드를 간단하게 작성할 수 있다.</p>
<hr>
<h2 id="자료형">자료형</h2>
<h3 id="숫자형">숫자형</h3>
<p>숫자 형태로 이루어진 자료형이다.
1, 2, 3 과 같은 정수, 1.23 과 같은 실수 8진수나 16진수도 있다.</p>
<h4 id="정수형integer">정수형(Integer)</h4>
<p>말 그대로 정수를 뜻하는 자료형이다.
정수의 타입은 &#39;int&#39; 로 출력된다.</p>
<pre><code class="language-python">a = 1 
a = 0 
a = -321

type(a) -&gt; int</code></pre>
<p>❓ type()
데이터의 타입을 확인할 수 있는 함수이다.</p>
<h4 id="실수형floating-point">실수형(Floating-point)</h4>
<p>소수점이 포함된 숫자를 말한다.
실수형의 타입은 &#39;float&#39;으로 출력된다.</p>
<pre><code class="language-python">a = 1.5
a = -3.45

type(a) -&gt; float</code></pre>
<hr>
<h3 id="문자열string">문자열(String)</h3>
<p>문자, 단어 등으로 구성된 문자들의 집합을 의미한다.
큰따옴표(&quot; &quot;) 혹은 작은따옴표(&#39; &#39;)로 둘러싸여 있다.</p>
<pre><code class="language-python">&#39;Hello, world!&#39;
&quot;Hello, world!&quot;
&#39;&#39;&#39;Hello, world!&#39;&#39;&#39;
&quot;&quot;&quot;Hello, world!&quot;&quot;&quot;</code></pre>
<p>이렇게 총 4가지의 방법으로 작성할 수 있다.</p>
<p>실수형의 타입은 &#39;str&#39;로 출력된다.</p>
<pre><code class="language-python">&gt;&gt;&gt; a = &quot;Hello, world!&quot;
&gt;&gt;&gt; type(a)
str</code></pre>
<p>따옴표를 양쪽에 3개씩 입력하는 방법은 문자열이 여러줄로 입력되어 있는 경우에 주로 사용한다.</p>
<pre><code class="language-python">&quot;&quot;&quot;
Life is to short
You need python
&quot;&quot;&quot;</code></pre>
<p>작은따옴표를 사용하더라도 결과는 같다.</p>
<h4 id="연산하기">연산하기</h4>
<p>숫자형은 물론이고 문자열도 연산이 가능하다.
더하거나 곱할 수 있으며, 다른 언어에서는 볼 수 없는 파이썬만의 장점이다.</p>
<ul>
<li><p>더하기</p>
<pre><code class="language-python">&gt;&gt;&gt; head = &quot;Python&quot;
&gt;&gt;&gt; tail = &quot; is fun!&quot;
&gt;&gt;&gt; head + tail
&#39;Python is fun!&#39;</code></pre>
</li>
<li><p>곱하기</p>
<pre><code class="language-python">&gt;&gt;&gt; a = &quot;python&quot;
&gt;&gt;&gt; a * 2
&#39;pythonpython&#39;</code></pre>
<pre><code class="language-python"># multistring.py
</code></pre>
</li>
</ul>
<p>print(&quot;=&quot; * 50)
print(&quot;My Program&quot;)
print(&quot;=&quot; * 50)</p>
<pre><code>---</code></pre>]]></description>
        </item>
        <item>
            <title><![CDATA[<백준> 함수]]></title>
            <link>https://velog.io/@js_son/%EB%B0%B1%EC%A4%80-%ED%95%A8%EC%88%98</link>
            <guid>https://velog.io/@js_son/%EB%B0%B1%EC%A4%80-%ED%95%A8%EC%88%98</guid>
            <pubDate>Sun, 10 Jul 2022 14:43:40 GMT</pubDate>
            <description><![CDATA[<h3 id="📌5단계-함수">📌5단계 함수</h3>
<hr>
<h5 id="백준-단계별-문제풀이를-진행하였습니다-5단계-함수-풀어보기-💨">백준 단계별 문제풀이를 진행하였습니다. &#39;5단계 함수&#39; 풀어보기 💨</h5>
<hr>
<h4 id="🖋-15596-정수-n개의-합">🖋 15596 정수 N개의 합</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/9fc12cc1-d858-4359-a4d5-20a46bf92d46/image.PNG" alt=""></p>
<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">def solve(a):
    sum = 0
    for num in a:
        sum += num
    return sum</code></pre>
<hr>
<h4 id="🖋-4673-셀프-넘버">🖋 4673 셀프 넘버</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/f951ae78-0790-4c97-80b4-8324c99dc0c2/image.PNG" alt=""></p>
<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">range_numbers = set(range(1, 10001))
non_self_nums = set()

for i in range(1, 10001):
    for j in str(i):
        i += int(j)
    non_self_nums.add(i)

self_num = sorted(range_numbers - non_self_nums)
for i in self_num:
    print(i)</code></pre>
<hr>
<h4 id="🖋-1065-한수">🖋 1065 한수</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/73fc7e66-43eb-4213-92d5-abf71b2bdf8a/image.PNG" alt=""></p>
<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">n = int(input())

result = 0
for i in range(1, n+1):
    num_list = list(map(int, str(i)))
    if i &lt; 100:
        result += 1
    elif num_list[0]-num_list[1] == num_list[1]-num_list[2]:
        result += 1

print(result)</code></pre>
<hr>
]]></description>
        </item>
        <item>
            <title><![CDATA[<백준> 1차원 배열]]></title>
            <link>https://velog.io/@js_son/%EB%B0%B1%EC%A4%80-1%EC%B0%A8%EC%9B%90-%EB%B0%B0%EC%97%B4</link>
            <guid>https://velog.io/@js_son/%EB%B0%B1%EC%A4%80-1%EC%B0%A8%EC%9B%90-%EB%B0%B0%EC%97%B4</guid>
            <pubDate>Sun, 03 Jul 2022 14:43:04 GMT</pubDate>
            <description><![CDATA[<h3 id="📌4단계-1차원-배열">📌4단계 1차원 배열</h3>
<hr>
<h5 id="백준-단계별-문제풀이를-진행하였습니다-4단계-1차원-배열-풀어보기-💨">백준 단계별 문제풀이를 진행하였습니다. &#39;4단계 1차원 배열&#39; 풀어보기 💨</h5>
<hr>
<h4 id="🖋-10818-최소-최대">🖋 10818 최소, 최대</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/8bba4154-7460-45e2-b15c-f5a8eac26409/image.PNG" alt=""></p>
<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">n = int(input())
result = list(map(int, input().split()))

print(min(result), max(result))</code></pre>
<hr>
<h4 id="🖋-2562-최댓값">🖋 2562 최댓값</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/7750cb52-948a-4663-bb0b-d9b30f39c950/image.PNG" alt=""></p>
<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">lst = []

for i in range(1, 10):
    n = int(input())
    lst.append(n)

result = max(lst)

print(result)
print(lst.index(result) + 1)</code></pre>
<hr>
<h4 id="🖋-2577-숫자의-개수">🖋 2577 숫자의 개수</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/5c2c9e2f-56f2-4121-ad3e-de5dd9acab67/image.PNG" alt=""></p>
<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">a = int(input())
b = int(input())
c = int(input())

result = list(str(a*b*c))

for i in range(10):
    print(result.count(str(i)))</code></pre>
<hr>
<h4 id="🖋-3052-나머지">🖋 3052 나머지</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/38573cdb-ef59-4cef-9279-a1e61d862b46/image.PNG" alt=""></p>
<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">lst = []

for i in range(10):
    n = int(input())
    lst.append(n % 42)

lst = set(lst)
print(len(lst))</code></pre>
<hr>
<h4 id="🖋-1546-평균">🖋 1546 평균</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/5872773d-e0b7-4a43-a495-e3a417bd3b38/image.PNG" alt=""></p>
<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">n = int(input())
lst = list(map(int, input().split()))

lst.sort(reverse=False)
m = lst[len(lst)-1]

sumN = 0


for i in lst:
    ns = (i/m)*100
    sumN += ns

print(sumN/len(lst))</code></pre>
<hr>
<h4 id="🖋-8958-ox퀴즈">🖋 8958 OX퀴즈</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/97dc6e2b-5485-4077-87a3-520a983a340e/image.PNG" alt=""></p>
<br/>

<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">n = int(input())

for i in range(1, n+1):
    caseSc = input()
    score = 0
    sumS = 0
    for j in caseSc:
        if j == &#39;O&#39;:
            score += 1
        else:
            score = 0
        sumS += score
    print(sumS)</code></pre>
<hr>
<h4 id="🖋-4344-평균은-넘겠지">🖋 4344 평균은 넘겠지</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/913d39ca-27e6-4d64-9c3d-a50432de4482/image.PNG" alt=""></p>
<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">n = int(input())

for i in range(1, n+1):
    case = list(map(int, input().split()))
    avg = sum(case[1:])/case[0]
    cnt = 0
    for score in case[1:]:
        if score &gt; avg:
            cnt += 1

    result = cnt/case[0]*100
    print(f&#39;{result:.3f}%&#39;)</code></pre>
<hr>
]]></description>
        </item>
        <item>
            <title><![CDATA[<백준> 반복문]]></title>
            <link>https://velog.io/@js_son/%EB%B0%B1%EC%A4%80-%EB%B0%98%EB%B3%B5%EB%AC%B8</link>
            <guid>https://velog.io/@js_son/%EB%B0%B1%EC%A4%80-%EB%B0%98%EB%B3%B5%EB%AC%B8</guid>
            <pubDate>Sun, 26 Jun 2022 13:40:52 GMT</pubDate>
            <description><![CDATA[<p><img src="https://velog.velcdn.com/images/js_son/post/f0d49df8-eb10-4670-a016-cfed3ad62ab2/image.JPG" alt=""></p>
<h3 id="📌3단계-반복문">📌3단계 반복문</h3>
<hr>
<h5 id="3단계-반복문-풀어보기-💨">&#39;3단계 반복문&#39; 풀어보기 💨</h5>
<h5 id="조건문과-같이-반복문을-많이-연습했어서-쉽게-풀-수-있었습니다-">조건문과 같이 반복문을 많이 연습했어서 쉽게 풀 수 있었습니다 !</h5>
<hr>
<h4 id="🖋-2739-구구단">🖋 2739 구구단</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/2b8996e4-6edf-4b5c-9f78-908bee0a6a53/image.JPG" alt=""></p>
<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">n = int(input())

for i in range(1, 10):
    print(f&#39;{n} * {i} = {n*i}&#39;)</code></pre>
<hr>
<h4 id="🖋-10950-ab---3">🖋 10950 A+B - 3</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/83dca6f0-0a11-4f23-9be0-e5927b6a080e/image.JPG" alt=""></p>
<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">t = int(input())

for i in range(1, t+1):
    a, b = map(int, input().split())
    print(a+b)</code></pre>
<hr>
<h4 id="🖋-8393-합">🖋 8393 합</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/c1bb9d97-e571-406f-8957-f4868fad59ed/image.JPG" alt=""></p>
<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">n = int(input())

result = 0
for i in range(1, n+1):
    result += i

print(result)</code></pre>
<hr>
<h4 id="🖋-15552-빠른-ab">🖋 15552 빠른 A+B</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/d105255b-4169-40ae-8252-44cf797333fa/image.JPG" alt=""></p>
<p>🔍 해당 문제는 Python의 경우 <strong>sys.stdin.readline()</strong> 을 사용할 수 있다고 명시되어 있어요. 처음 보는 내용이어서 조금 검색해보고 사용하였습니다. input()을 사용할 때보다 <strong>시간 단축</strong>에 용이한 함수 !</p>
<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">import sys

t = int(sys.stdin.readline())

for i in range(1, t+1):
    a, b = map(int, sys.stdin.readline().split())
    print(a+b)</code></pre>
<hr>
<h4 id="🖋-2741-n-찍기">🖋 2741 N 찍기</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/f734b82d-4efc-4b2c-8789-91b90949329f/image.JPG" alt=""></p>
<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">n = int(input())

for i in range(1, n+1):
    print(i)</code></pre>
<hr>
<h4 id="🖋-2742-기찍-n">🖋 2742 기찍 N</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/6d9535e7-9775-4736-b3a2-35f9cb57fd95/image.JPG" alt=""></p>
<p>🔍 range(a, b, c) a부터 b-1까지 c만큼의 간격으로 반복</p>
<br/>

<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">n = int(input())

for i in range(n, 0, -1):
    print(i)</code></pre>
<hr>
<h4 id="🖋-11021-ab---7">🖋 11021 A+B - 7</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/282709a6-793a-4dd7-8c1a-432a7400f475/image.JPG" alt=""></p>
<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">t = int(input())

for i in range(1, t+1):
    a, b = map(int, input().split())
    print(f&#39;Case #{i}: {a+b}&#39;)</code></pre>
<hr>
<h4 id="🖋-11022-ab---8">🖋 11022 A+B - 8</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/83f23354-a5b1-470e-bb53-6e33d7510e1d/image.JPG" alt=""></p>
<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">t = int(input())

for i in range(1, t+1):
    a, b = map(int, input().split())
    print(f&#39;Case #{i}: {a} + {b} = {a+b}&#39;)</code></pre>
<hr>
<h4 id="🖋-2438-별-찍기---1">🖋 2438 별 찍기 - 1</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/60daf87a-fb2b-4ded-b106-2a5ec61ac58c/image.JPG" alt=""></p>
<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">n = int(input())

for i in range(1, n+1):
    print(&#39;*&#39;*i)</code></pre>
<hr>
<h4 id="🖋-2439-별-찍기---2">🖋 2439 별 찍기 - 2</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/7b877199-0f2d-476a-b2ea-f670ec67cad4/image.JPG" alt=""></p>
<p>🔍 .rjust(총 글자 수, 채울 문자) 총 글자 수에서 함수 앞에서 입력된 글자 수를 제외한 나머지 부분을 원하는 문자로 채워줍니다. 우측 정렬 시 이용됩니다. 반대로 좌측 정렬 .ljust() 함수도 있고 사용 형태는 동일합니다.</p>
<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">n = int(input())

for i in range(1, n+1):
    print((&#39;*&#39; * i).rjust(n))</code></pre>
<hr>
<h4 id="🖋-10871-x보다-작은-수">🖋 10871 X보다 작은 수</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/3223be21-dbf9-4557-b5b4-b0a053b5dbfc/image.JPG" alt=""></p>
<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">n, x = map(int, input().split())
a = list(map(int, input().split()))

for i in range(n):
    if a[i] &lt; x:
        print(a[i], end=&#39; &#39;)</code></pre>
<hr>
<h4 id="🖋-10952-ab---5">🖋 10952 A+B - 5</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/f2f98a36-21a1-489c-8274-52b95e062cd5/image.JPG" alt=""></p>
<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">flag = True
while flag:
    a, b = map(int, input().split())
    if a != 0 and b != 0:
        print(a+b)

    elif a == b == 0:
        break</code></pre>
<hr>
<h4 id="🖋-10951-ab---4">🖋 10951 A+B - 4</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/df78492d-c23b-485f-81b2-f61009acbe4d/image.JPG" alt=""></p>
<p>🔍 테스트 케이스의 개수가 주어지지 않을 때, &lt;try: 에러 발생 가능 코드 작성, except: 에러 발생 시 실행할 코드 작성&gt;을 활용했습니다.</p>
<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">flag = True
while flag:
    try:
        a, b = map(int, input().split())
        print(a+b)

    except:
        break</code></pre>
<hr>
<h4 id="🖋-1110-더하기-사이클">🖋 1110 더하기 사이클</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/d9989eaf-457d-421d-9bf1-186ad02da752/image.JPG" alt=""></p>
<p>🔍 원리를 알면 쉬운데 살짝 복잡했던 문제</p>
<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">n = int(input())

num = n
cnt = 0   # 사이클 횟수
while True:
    sumN = (num // 10) + (num % 10)   # 각 자릿수를 더함
    newN = ((num % 10) * 10) + (sumN % 10)   # 새로운 수
    cnt += 1
    num = newN
    if n == newN:
        break

print(cnt)</code></pre>
<hr>
]]></description>
        </item>
        <item>
            <title><![CDATA[<백준> 조건문]]></title>
            <link>https://velog.io/@js_son/%EB%B0%B1%EC%A4%80-%EC%A1%B0%EA%B1%B4%EB%AC%B8</link>
            <guid>https://velog.io/@js_son/%EB%B0%B1%EC%A4%80-%EC%A1%B0%EA%B1%B4%EB%AC%B8</guid>
            <pubDate>Sun, 19 Jun 2022 06:43:14 GMT</pubDate>
            <description><![CDATA[<p><img src="https://velog.velcdn.com/images/js_son/post/900e4dbc-9789-4469-956c-efeabf76a0bc/image.JPG" alt=""></p>
<h3 id="📌2단계-조건문">📌2단계 조건문</h3>
<hr>
<h5 id="이번-주도-저번과-마찬가지로-백준-단계별-문제풀이를-진행하였습니다-2단계-조건문-풀어보기-💨">이번 주도 저번과 마찬가지로 백준 단계별 문제풀이를 진행하였습니다. &#39;2단계 조건문&#39; 풀어보기 💨</h5>
<h5 id="기본기를-탄탄하게-😊-코딩테스트-전에-혼자-연습할-때에도-조건문을-많이-연습했어서-쉽게-풀-수-있었습니다-">기본기를 탄탄하게 😊 코딩테스트 전에 혼자 연습할 때에도 조건문을 많이 연습했어서 쉽게 풀 수 있었습니다 !</h5>
<hr>
<h4 id="🖋-1330-두-수-비교하기">🖋 1330 두 수 비교하기</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/e16dbbdb-7688-4894-a74e-48f131c881f1/image.JPG" alt=""></p>
<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">a, b = map(int, input().split())

if a &gt; b:
    print(&#39;&gt;&#39;)
elif a &lt; b:
    print(&#39;&lt;&#39;)
elif a == b:
    print(&#39;==&#39;)</code></pre>
<hr>
<h4 id="🖋-9498-시험-성적">🖋 9498 시험 성적</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/e917034a-ac65-4d60-a351-be2b92c6509e/image.JPG" alt=""></p>
<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">score = int(input())

if score &gt;= 90:
    print(&#39;A&#39;)
elif score &gt;= 80:
    print(&#39;B&#39;)
elif score &gt;= 70:
    print(&#39;C&#39;)
elif score &gt;= 60:
    print(&#39;D&#39;)
else:
    print(&#39;F&#39;)</code></pre>
<hr>
<h4 id="🖋-2753-윤년">🖋 2753 윤년</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/7b39ce48-19c6-41e5-b704-fd77bc7b195b/image.JPG" alt=""></p>
<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">y = int(input())

if y % 4 == 0:

    if y % 100 != 0 or y % 400 == 0:
        print(&#39;1&#39;)

    else:
        print(&#39;0&#39;)

else:
    print(&#39;0&#39;)</code></pre>
<hr>
<h4 id="🖋-14681-사분면-고르기">🖋 14681 사분면 고르기</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/a057a35b-6f43-45cd-abf8-6756b77d5656/image.JPG" alt=""></p>
<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">x = int(input())
y = int(input())

if x &gt; 0:
    if y &gt; 0:
        print(&#39;1&#39;)
    elif y &lt; 0:
        print(&#39;4&#39;)
elif x &lt; 0:
    if y &gt; 0:
        print(&#39;2&#39;)
    elif y &lt; 0:
        print(&#39;3&#39;)</code></pre>
<hr>
<h4 id="🖋-2884-알람-시계">🖋 2884 알람 시계</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/4ab4a16d-d0bc-4b48-831a-8fc4bad39ea3/image.JPG" alt=""></p>
<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">h, m = map(int, input().split())

if m &gt;= 45:
    print(h, m-45)
elif m &lt; 45:
    if h == 0:
        print(23, 60-(45-m))
    else:
        print(h-1, 60-(45-m))</code></pre>
<hr>
<h4 id="🖋-2525-오븐-시계">🖋 2525 오븐 시계</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/f1afd10a-4577-4ee7-895c-99465ba3404f/image.JPG" alt=""></p>
<p>🔍 앞에 알람 시계 문제는 금방 풀었는데, 이번 문제는 시간 계산이 헷갈렸어요 (っ °Д °;)っ</p>
<br/>

<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">a, b = map(int, input().split())
c = int(input())

m = b + c
h = int(a + (m // 60))

if m &lt; 60:
    print(a, m)

elif m &gt;= 60:
    if h &gt; 23:
        print((h - 24), int(m % 60))
    else:
        print(h, int(m % 60))</code></pre>
<hr>
<h4 id="🖋-2480-주사위-세개">🖋 2480 주사위 세개</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/62285e6c-f214-4391-86d9-6eca5eacbd86/image.JPG" alt=""></p>
<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">a, b, c = map(int, input().split())

if a == b == c:
    print(10000+a*1000)
elif a == b != c:
    print(1000+a*100)
elif a != b == c:
    print(1000+b*100)
elif b != c == a:
    print(1000+c*100)
elif a != b != c:
    print(max(a, b, c)*100)</code></pre>
<hr>
]]></description>
        </item>
        <item>
            <title><![CDATA[<백준> 입출력과 사칙연산]]></title>
            <link>https://velog.io/@js_son/%EB%B0%B1%EC%A4%80-%EC%9E%85%EC%B6%9C%EB%A0%A5%EA%B3%BC-%EC%82%AC%EC%B9%99%EC%97%B0%EC%82%B0</link>
            <guid>https://velog.io/@js_son/%EB%B0%B1%EC%A4%80-%EC%9E%85%EC%B6%9C%EB%A0%A5%EA%B3%BC-%EC%82%AC%EC%B9%99%EC%97%B0%EC%82%B0</guid>
            <pubDate>Sun, 12 Jun 2022 12:08:28 GMT</pubDate>
            <description><![CDATA[<h3 id="📌1단계-입출력과-사칙연산">📌1단계 입출력과 사칙연산</h3>
<hr>
<h5 id="6월-새로운-스터디-조-분들과-백준-단계별-문제풀이-중-1단계-입출력과-사칙연산-풀어보기를-제안했습니다-💨">6월 새로운 스터디 조 분들과 백준 단계별 문제풀이 중 &#39;1단계 입출력과 사칙연산&#39; 풀어보기를 제안했습니다 💨</h5>
<h5 id="첫-주는-가볍게-진행할-수-있도록-파이썬-기본기-복습-겸-문제를-풀어보았습니다-😊">첫 주는 가볍게 진행할 수 있도록 파이썬 기본기 복습 겸 문제를 풀어보았습니다 😊</h5>
<hr>
<h4 id="🖋-2557-hello-world">🖋 2557 Hello World</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/94382ba2-2ad1-4ffc-b2ef-a0800617b188/image.JPG" alt=""></p>
<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">print(&#39;Hello World!&#39;)</code></pre>
<hr>
<h4 id="🖋-10718-we-love-kriii">🖋 10718 We love kriii</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/042ebbb8-f87a-4d5a-9722-ae6207a7493d/image.JPG" alt=""></p>
<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">for i in range(2):
    print(&#39;강한친구 대한육군&#39;)</code></pre>
<hr>
<h4 id="🖋-10171-고양이">🖋 10171 고양이</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/a9b3ff6c-c638-48f7-a25e-d60dce1e8330/image.JPG" alt=""></p>
<p>🔍 &quot;&quot; (역슬래시) 출력 시 두 번씩 입력하기</p>
<br/>

<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">print(&quot;\\    /\\&quot;)
print(&quot; )  ( &#39;)&quot;)
print(&quot;(  /  )&quot;)
print(&quot; \\(__)|&quot;)</code></pre>
<hr>
<h4 id="🖋-10172-개">🖋 10172 개</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/5c4b6e6c-fcc4-4c92-8ff8-8a9891303901/image.JPG" alt=""></p>
<p>🔍 10171 고양이와 같은 유형이라 어렵지 않았습니다 (｡･∀･)ﾉﾞ</p>
<br/>

<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">print(&#39;|\\_/|&#39;)
print(&#39;|q p|   /}&#39;)
print(&#39;( 0 )&quot;&quot;&quot;\\&#39;)
print(&#39;|&quot;^&quot;`    |&#39;)
print(&#39;||_/=\\\\__|&#39;)</code></pre>
<hr>
<h4 id="🖋-1000-ab">🖋 1000 A+B</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/6585ea8e-0a9e-4d34-8416-06683babf97a/image.JPG" alt=""></p>
<p>🔍 input()을 통해 입력 받은 값을 .split()을 통해 공백 기준으로 분리, map()을 활용하여 int 정수형으로 변환 후 변수에 각각 저장!</p>
<br/>

<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">a, b = map(int, input().split())
print(f&#39;{a + b}&#39;)</code></pre>
<hr>
<h4 id="🖋-1001-a-b">🖋 1001 A-B</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/40e7a4db-2a1f-4118-9032-ffb253e347e0/image.JPG" alt=""></p>
<p>🔍 앞에서 map() 함수 활용해본 뒤라 쉽게 풀렸어요 (╹ڡ╹ )</p>
<br/>

<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">a, b = map(int, input().split())
print(f&#39;{a - b}&#39;)</code></pre>
<hr>
<h4 id="🖋-10998-axb">🖋 10998 AxB</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/219ae6a7-940b-470b-9669-c08f6597c695/image.JPG" alt=""></p>
<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">a,b = map(int, input().split())
print(f&#39;{a * b}&#39;)</code></pre>
<hr>
<h4 id="🖋-1008-ab">🖋 1008 A/B</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/6b0895ce-01fa-408f-a123-d56b338e288d/image.JPG" alt=""></p>
<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">a,b = map(int, input().split())
print(f&#39;{a / b}&#39;)</code></pre>
<hr>
<h4 id="🖋-10869-사칙연산">🖋 10869 사칙연산</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/36fb4215-46d4-4478-8ede-cdef831a212c/image.JPG" alt=""></p>
<p>🔍 sep=&#39;\n&#39; : 하나의 print로 감싸진 각각의 출력 문구 사이를 개행, 한줄씩 출력합니다.</p>
<br/>

<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">a, b = map(int, input().split())
print(a+b, a-b, a*b, a//b, a%b, sep=&#39;\n&#39;)</code></pre>
<hr>
<h4 id="🖋-10926-">🖋 10926 ??!</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/fbc04078-9c1e-4ccb-b450-0c245db33117/image.JPG" alt=""></p>
<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">userId = input()
print(userId+&#39;??!&#39;)</code></pre>
<hr>
<h4 id="🖋-18108-1998년생인-내가-태국에서는-2541년생">🖋 18108 1998년생인 내가 태국에서는 2541년생?!</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/2c2e4c1a-9021-4ee5-b30a-9f077137213a/image.JPG" alt=""></p>
<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">print(int(input())-543)</code></pre>
<hr>
<h4 id="🖋-10430-나머지">🖋 10430 나머지</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/573d2111-d0da-444a-bb12-1e748508fd82/image.JPG" alt=""></p>
<p>🔍 10869 사칙연산 문제랑 비슷하네요!</p>
<br/>

<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">a,b,c = map(int, input().split())
print((a+b)%c, ((a%c)+(b%c))%c, (a*b)%c, ((a%c)*(b%c))%c, sep=&#39;\n&#39;)</code></pre>
<hr>
<h4 id="🖋-2588-곱셈">🖋 2588 곱셈</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/037a63f8-0cbd-4ff1-a68b-4e1f626d88eb/image.png" alt=""></p>
<p>🔍 b의 index 번호를 활용</p>
<br/>

<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">a = int(input())
b = input()
print(a*int(b[2]))
print(a*int(b[1]))
print(a*int(b[0]))
print(a*int(b))</code></pre>
<hr>
<h4 id="🖋-25083-새싹">🖋 25083 새싹</h4>
<br/>

<p><strong>📖 문제</strong> <img src="https://velog.velcdn.com/images/js_son/post/8f0383b0-2ece-41d6-96ec-92f6e9d3de9e/image.JPG" alt=""></p>
<p>🔍 &#39; 와 &quot; 출력이 한 행 안에서 이루어질때는 &#39;&#39;&#39; 또는 &quot;&quot;&quot;을 활용합니다.
🔍🔍 혹은 출력문에서 &#39; 와 &quot; 앞에 \ 입력합니다. (ex.첫째줄 print(&quot; ,r&#39;&quot;7&quot;))</p>
<br/>

<p><strong>💻 소스 코드</strong></p>
<pre><code class="language-python">print(&#39;&#39;&#39;         ,r&#39;&quot;7&#39;&#39;&#39;)
print(&#39;&#39;&#39;r`-_   ,&#39;  ,/&#39;&#39;&#39;)
print(&quot;&quot;&quot; \\. &quot;. L_r&#39;&quot;&quot;&quot;)
print(&#39;&#39;&#39;   `~\\/&#39;&#39;&#39;)
print(&#39;&#39;&#39;      |&#39;&#39;&#39;)
print(&#39;&#39;&#39;      |&#39;&#39;&#39;)</code></pre>
<hr>
]]></description>
        </item>
    </channel>
</rss>