<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>Piece</title>
    <link>https://unpieceof.tistory.com/</link>
    <description></description>
    <language>ko</language>
    <pubDate>Thu, 9 Jul 2026 20:55:16 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>/* a piece of dev */</managingEditor>
    <image>
      <title>Piece</title>
      <url>https://tistory1.daumcdn.net/tistory/5338746/attach/2d41dc9361eb44b095c980e685fe3d3c</url>
      <link>https://unpieceof.tistory.com</link>
    </image>
    <item>
      <title>[PS] 14233 보석 도둑</title>
      <link>https://unpieceof.tistory.com/53</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Python-Symbol.png&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2160&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/tekGa/btsJNe6V2aV/u7jnRvaMnfT48VSEWGvq90/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/tekGa/btsJNe6V2aV/u7jnRvaMnfT48VSEWGvq90/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/tekGa/btsJNe6V2aV/u7jnRvaMnfT48VSEWGvq90/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FtekGa%2FbtsJNe6V2aV%2Fu7jnRvaMnfT48VSEWGvq90%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;500&quot; height=&quot;281&quot; data-filename=&quot;Python-Symbol.png&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2160&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;  문제&lt;/b&gt;&lt;/h2&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 100%;&quot;&gt;
&lt;div style=&quot;background-color: #ffffff; color: #333333; text-align: start;&quot;&gt;
&lt;div id=&quot;problem_description&quot;&gt;&lt;span&gt;희대의 도둑 효빈이는 세계 최고의 보석가게 영선상에 잠입할 계획이다. 이 영선상은 최고의 보석가게답게 최고의 보안장치를 두고 있는데, 이 보안장치를 해제하지 않는다면 보석을 여러 개 훔쳐갈 시, 보석끼리 달라붙으며 무게가 모든 보석들의 곱으로 늘어난다.&lt;/span&gt;&lt;br /&gt;&lt;span&gt;효빈이는 이 보안장치를 해제할 수 없기 때문에, 차라리 곱해진 대로 최대한 많은 보석들을 가져오기로 계획했다. 효빈이는 한번에 k라는 무게를 들 수 있으므로, 딱 k만큼의 무게만큼의 보석을 가져오고 싶은데, 그 때 보석들의 최대 개수를 알고싶다.&lt;/span&gt;&lt;br /&gt;&lt;span&gt;영선상에는 세계 최고의 보석가게답게 모든 무게의 보석들이 매우 많이때문에, 훔쳐가는 보석이 부족할 일은 없다. 다만 모든 보석들은 무게가 1보다 크다.&lt;/span&gt;&lt;br /&gt;&lt;span&gt;효빈이는 이제 영선상에 잡입할 계획을 다 세웠다. 하지만 무슨 보석들을 훔쳐올지 결정하지 못하였는데, 효빈이를 대신하여 훔쳐올 보석들을 결정해주자.&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: #ffffff; color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;h2 style=&quot;color: #585f69;&quot; data-ke-size=&quot;size26&quot;&gt;입력&lt;/h2&gt;
&lt;/div&gt;
&lt;div id=&quot;problem_input&quot;&gt;&lt;span&gt;첫째 줄에는 효빈이가 들 수 있는 무게 k가 주어진다.(2&amp;le;k&amp;le;1012)&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: #ffffff; color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;h2 style=&quot;color: #585f69;&quot; data-ke-size=&quot;size26&quot;&gt;출력&lt;/h2&gt;
&lt;/div&gt;
&lt;div id=&quot;problem_output&quot;&gt;&lt;span&gt;첫째 줄에는 효빈이가 훔쳐올 보석의 개수를 출력하고, 다음 줄에는 훔쳐올 보석들의 무게를 오름차순으로 출력하시오.&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;✅ &lt;b&gt;내 풀이&lt;/b&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;소수 찾기 - 제곱근까지만 확인하면 됨!&lt;/li&gt;
&lt;li&gt;소인수 분해 - 1과 자기 자신은 제외하고 찾았&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;python&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;weight = int(input())
jewels = []

while weight &amp;gt; 1:
    for i in range(2, int(weight**0.5)+1):
        if weight%i == 0:
            jewels.append(i)
            weight = weight//i
            break
    else:
        jewels.append(weight)
        break

jewels = sorted(jewels)
print(len(jewels))
print(' '.join(map(str, jewels)))&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://www.acmicpc.net/submit/14232/84343810&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.acmicpc.net/submit/14232/84343810&lt;/a&gt;&lt;/p&gt;</description>
      <category>Dev/PS</category>
      <category>python</category>
      <category>백준</category>
      <category>소수</category>
      <category>정수론</category>
      <author>/* a piece of dev */</author>
      <guid isPermaLink="true">https://unpieceof.tistory.com/53</guid>
      <comments>https://unpieceof.tistory.com/53#entry53comment</comments>
      <pubDate>Wed, 25 Sep 2024 22:37:20 +0900</pubDate>
    </item>
    <item>
      <title>[PS] 1090 체커</title>
      <link>https://unpieceof.tistory.com/52</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Python-Symbol.png&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2160&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cf5b1n/btsJJw8FjgH/vDNE714XHxFannkcVM2NAK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cf5b1n/btsJJw8FjgH/vDNE714XHxFannkcVM2NAK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cf5b1n/btsJJw8FjgH/vDNE714XHxFannkcVM2NAK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcf5b1n%2FbtsJJw8FjgH%2FvDNE714XHxFannkcVM2NAK%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;500&quot; height=&quot;281&quot; data-filename=&quot;Python-Symbol.png&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2160&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;  문제&lt;/b&gt;&lt;/h2&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 100%;&quot;&gt;
&lt;div style=&quot;background-color: #ffffff; color: #333333; text-align: start;&quot;&gt;
&lt;div id=&quot;problem_description&quot;&gt;&lt;span&gt;N개의 체커가 엄청 큰 보드 위에 있다. i번 체커는 (xi, yi)에 있다. 같은 칸에 여러 체커가 있을 수도 있다. 체커를 한 번 움직이는 것은 그 체커를 위, 왼쪽, 오른쪽, 아래 중의 한 방향으로 한 칸 움직이는 것이다.&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: #ffffff; color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;h2 style=&quot;color: #585f69;&quot; data-ke-size=&quot;size26&quot;&gt;입력&lt;/h2&gt;
&lt;/div&gt;
&lt;div id=&quot;problem_input&quot;&gt;&lt;span&gt;첫째 줄에 N이 주어진다. N은 50보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에 각 체커의 x좌표와 y좌표가 주어진다. 이 값은 1,000,000보다 작거나 같은 자연수이다.&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: #ffffff; color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;h2 style=&quot;color: #585f69;&quot; data-ke-size=&quot;size26&quot;&gt;출력&lt;/h2&gt;
&lt;/div&gt;
&lt;div id=&quot;problem_output&quot;&gt;&lt;span&gt;첫째 줄에 수 N개를 출력한다. k번째 수는 적어도 k개의 체커가 같은 칸에 모이도록 체커를 이동해야 하는 최소 횟수이다.&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;✅ &lt;b&gt;내 답&lt;/b&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;answer 선언 시 주어진 조건에서 가장 큰 거리의 값으로 초기화&lt;/li&gt;
&lt;li&gt;주어진 좌표값(x, y) 중 한 점까지의 거리를 계산하여 sorting&lt;/li&gt;
&lt;li&gt;작은 값부터 더해가며 answer와 크기 비교&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;python&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;import sys

num = int(input())
answer = [int(1e9)]*num

points = [list(map(int,sys.stdin.readline().strip().split())) for _ in range(num)]


x_set = set(x for x, y in points)
y_set = set(y for x, y in points)

for x in x_set:
    for y in y_set:
        dist_arr = []
        for src_point in points:
            dist = abs(x - src_point[0]) + abs(y - src_point[1])
            dist_arr.append(dist)
        dist_arr = sorted(dist_arr)
        
        for k in range(num):
            if sum(dist_arr[:k+1]) &amp;lt; answer[k]:
                answer[k] = sum(dist_arr[:k+1])

print(' '.join(map(str, 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;a href=&quot;https://www.acmicpc.net/problem/1090&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.acmicpc.net/problem/1090&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;와 첫 플래티넘.. 감개무량입니다&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&amp;nbsp;&lt;/h2&gt;</description>
      <category>Dev/PS</category>
      <category>python</category>
      <category>set</category>
      <category>백준</category>
      <category>완전탐색</category>
      <author>/* a piece of dev */</author>
      <guid isPermaLink="true">https://unpieceof.tistory.com/52</guid>
      <comments>https://unpieceof.tistory.com/52#entry52comment</comments>
      <pubDate>Tue, 24 Sep 2024 00:03:34 +0900</pubDate>
    </item>
    <item>
      <title>[PS] 1764 듣보잡</title>
      <link>https://unpieceof.tistory.com/51</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Python-Symbol.png&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2160&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/r2WfS/btsJG2FyddC/UAK1dTKsSzyyhxt8Z0jxQ0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/r2WfS/btsJG2FyddC/UAK1dTKsSzyyhxt8Z0jxQ0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/r2WfS/btsJG2FyddC/UAK1dTKsSzyyhxt8Z0jxQ0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fr2WfS%2FbtsJG2FyddC%2FUAK1dTKsSzyyhxt8Z0jxQ0%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;500&quot; height=&quot;281&quot; data-filename=&quot;Python-Symbol.png&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2160&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;  문제&lt;/b&gt;&lt;/h2&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 17px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 100%; height: 17px;&quot;&gt;
&lt;div style=&quot;background-color: #ffffff; color: #333333; text-align: start;&quot;&gt;
&lt;div id=&quot;problem_description&quot;&gt;&lt;span&gt;김진영이 듣도 못한 사람의 명단과, 보도 못한 사람의 명단이 주어질 때, 듣도 보도 못한 사람의 명단을 구하는 프로그램을 작성하시오.&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: #ffffff; color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;h2 style=&quot;color: #585f69;&quot; data-ke-size=&quot;size26&quot;&gt;입력&lt;/h2&gt;
&lt;/div&gt;
&lt;div id=&quot;problem_input&quot;&gt;&lt;span&gt;첫째 줄에 듣도 못한 사람의 수 N, 보도 못한 사람의 수 M이 주어진다. 이어서 둘째 줄부터 N개의 줄에 걸쳐 듣도 못한 사람의 이름과, N+2째 줄부터 보도 못한 사람의 이름이 순서대로 주어진다. 이름은 띄어쓰기 없이 알파벳 소문자로만 이루어지며, 그 길이는 20 이하이다. N, M은 500,000 이하의 자연수이다.&lt;/span&gt;&lt;br /&gt;&lt;span&gt;듣도 못한 사람의 명단에는 중복되는 이름이 없으며, 보도 못한 사람의 명단도 마찬가지이다.&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: #ffffff; color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;h2 style=&quot;color: #585f69;&quot; data-ke-size=&quot;size26&quot;&gt;출력&lt;/h2&gt;
&lt;/div&gt;
&lt;div id=&quot;problem_output&quot;&gt;&lt;span&gt;듣보잡의 수와 그 명단을 사전순으로 출력한다.&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;✅ 내 답&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;- Counter 사용해서 교집합 추출&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;- set 변환하여 key만 출력&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;- set 변환 후 sorted로 정렬(reverse=True시 내림차순)&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;import sys
from collections import Counter

n, m = sys.stdin.readline().strip().split()

list1 = [sys.stdin.readline().strip() for _ in range(int(n))]
list2 = [sys.stdin.readline().strip() for _ in range(int(m))]

counter1 = Counter(list1)
counter2 = Counter(list2)

intersection = counter1 &amp;amp; counter2
answer = sorted(set(intersection))

print(len(answer))
for key in answer:
    print(key)&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://www.acmicpc.net/problem/1764&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.acmicpc.net/problem/1764&lt;/a&gt;&lt;/p&gt;</description>
      <category>Dev/PS</category>
      <category>counter</category>
      <category>python</category>
      <category>백준</category>
      <author>/* a piece of dev */</author>
      <guid isPermaLink="true">https://unpieceof.tistory.com/51</guid>
      <comments>https://unpieceof.tistory.com/51#entry51comment</comments>
      <pubDate>Fri, 20 Sep 2024 10:58:01 +0900</pubDate>
    </item>
    <item>
      <title>[PS] 11723 집합</title>
      <link>https://unpieceof.tistory.com/50</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Python-Symbol.png&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2160&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/drEmSu/btsJGjOSjyG/WUP8Jot21qIvFMlj76bZLK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/drEmSu/btsJGjOSjyG/WUP8Jot21qIvFMlj76bZLK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/drEmSu/btsJGjOSjyG/WUP8Jot21qIvFMlj76bZLK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdrEmSu%2FbtsJGjOSjyG%2FWUP8Jot21qIvFMlj76bZLK%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;500&quot; height=&quot;281&quot; data-filename=&quot;Python-Symbol.png&quot; data-origin-width=&quot;3840&quot; data-origin-height=&quot;2160&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;  문제&lt;/b&gt;&lt;/h2&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 100%;&quot;&gt;
&lt;div style=&quot;background-color: #ffffff; color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div id=&quot;problem_description&quot;&gt;&lt;span&gt;비어있는 공집합 S가 주어졌을 때, 아래 연산을 수행하는 프로그램을 작성하시오.&lt;/span&gt;&lt;br /&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li style=&quot;color: #555555;&quot;&gt;add x: S에 x를 추가한다. (1 &amp;le; x &amp;le; 20) S에 x가 이미 있는 경우에는 연산을 무시한다.&lt;/li&gt;
&lt;li style=&quot;color: #555555;&quot;&gt;remove x: S에서 x를 제거한다. (1 &amp;le; x &amp;le; 20) S에 x가 없는 경우에는 연산을 무시한다.&lt;/li&gt;
&lt;li style=&quot;color: #555555;&quot;&gt;check x: S에 x가 있으면 1을, 없으면 0을 출력한다. (1 &amp;le; x &amp;le; 20)&lt;/li&gt;
&lt;li style=&quot;color: #555555;&quot;&gt;toggle x: S에 x가 있으면 x를 제거하고, 없으면 x를 추가한다. (1 &amp;le; x &amp;le; 20)&lt;/li&gt;
&lt;li style=&quot;color: #555555;&quot;&gt;all: S를 {1, 2, ..., 20} 으로 바꾼다.&lt;/li&gt;
&lt;li style=&quot;color: #555555;&quot;&gt;empty: S를 공집합으로 바꾼다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: #ffffff; color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;h2 style=&quot;color: #585f69;&quot; data-ke-size=&quot;size26&quot;&gt;입력&lt;/h2&gt;
&lt;/div&gt;
&lt;div id=&quot;problem_input&quot;&gt;&lt;span&gt;첫째 줄에 수행해야 하는 연산의 수 M (1 &amp;le; M &amp;le; 3,000,000)이 주어진다.&lt;/span&gt;&lt;br /&gt;&lt;span&gt;둘째 줄부터 M개의 줄에 수행해야 하는 연산이 한 줄에 하나씩 주어진다.&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;background-color: #ffffff; color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;h2 style=&quot;color: #585f69;&quot; data-ke-size=&quot;size26&quot;&gt;출력&lt;/h2&gt;
&lt;/div&gt;
&lt;div id=&quot;problem_output&quot;&gt;&lt;span&gt;check&lt;span&gt;&amp;nbsp;&lt;/span&gt;연산이 주어질때마다, 결과를 출력한다.&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;✅ &lt;b&gt;내 답&lt;/b&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 메모리 초과 방지를 위해 한 줄씩 입력 받아 처리&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 중복을 허용하지 않는 집합(set) 사용&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;import sys

def check(s, num):
    print(1 if num in s else 0)

def add(s, num):
    s.add(num)

def remove(s, num):
    s.discard(num)

def toggle(s, num):
    if num in s:
        s.remove(num)
    else:
        s.add(num)

if __name__ == &quot;__main__&quot;:
    s = set()
    full_set = set(range(1, 21))

    M = int(sys.stdin.readline())
    
    for _ in range(M):
        cmd = sys.stdin.readline().strip().split()
        action = cmd[0]
        
        if action == 'add':
            add(s, int(cmd[1]))
        elif action == 'remove':
            remove(s, int(cmd[1]))
        elif action == 'check':
            check(s, int(cmd[1]))
        elif action == 'toggle':
            toggle(s, int(cmd[1]))
        elif action == 'all':
            s = full_set.copy()
        elif action == 'empty':
            s.clear()&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://www.acmicpc.net/problem/11723&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://www.acmicpc.net/problem/11723&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Dev/PS</category>
      <category>python</category>
      <category>백준</category>
      <category>집합</category>
      <author>/* a piece of dev */</author>
      <guid isPermaLink="true">https://unpieceof.tistory.com/50</guid>
      <comments>https://unpieceof.tistory.com/50#entry50comment</comments>
      <pubDate>Fri, 20 Sep 2024 09:59:42 +0900</pubDate>
    </item>
    <item>
      <title>[Zeroboard4] 제로보드4 설치하기(2024년 개정판)</title>
      <link>https://unpieceof.tistory.com/48</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;다운로드.png&quot; data-origin-width=&quot;500&quot; data-origin-height=&quot;102&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bjkifs/btsIzUpTm60/k0mDod5EahZem6wEd3eBQK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bjkifs/btsIzUpTm60/k0mDod5EahZem6wEd3eBQK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bjkifs/btsIzUpTm60/k0mDod5EahZem6wEd3eBQK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbjkifs%2FbtsIzUpTm60%2Fk0mDod5EahZem6wEd3eBQK%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;500&quot; height=&quot;102&quot; data-filename=&quot;다운로드.png&quot; data-origin-width=&quot;500&quot; data-origin-height=&quot;102&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;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;  설치 전 사전 작업&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;들어가기 전에.. .. 구시대의 유물인 제로보드4를 찾아 왔다는 건 기본적인 갠홈 지식은 있다는 가정 하에 진행합니다. 혹시 설정하시다가 문의사항 있으시면 편하게 댓글로 남겨주세요!&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;b&gt;1. zb4 for php8 다운로드&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;==&amp;gt; 호스팅 신청할 때 PHP 버전을 8.0 또는 8.2로 지정해주세요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://github.com/unpieceof/zeroboard4-php8/releases/tag/4.1.1&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://github.com/unpieceof/zeroboard4-php8/releases/tag/4.1.1&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1721091025350&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;object&quot; data-og-title=&quot;Release v4.1.1 &amp;middot; unpieceof/zeroboard4-php8&quot; data-og-description=&quot;ZB4 for PHP8 Password() function 삭제에 따른 오류 수정&quot; data-og-host=&quot;github.com&quot; data-og-source-url=&quot;https://github.com/unpieceof/zeroboard4-php8/releases/tag/4.1.1&quot; data-og-url=&quot;https://github.com/unpieceof/zeroboard4-php8/releases/tag/4.1.1&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/D2D6G/hyWCE5Nx2c/5olUcnC9PcP3J9qX8iFPqk/img.png?width=1200&amp;amp;height=600&amp;amp;face=0_0_1200_600&quot;&gt;&lt;a href=&quot;https://github.com/unpieceof/zeroboard4-php8/releases/tag/4.1.1&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://github.com/unpieceof/zeroboard4-php8/releases/tag/4.1.1&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/D2D6G/hyWCE5Nx2c/5olUcnC9PcP3J9qX8iFPqk/img.png?width=1200&amp;amp;height=600&amp;amp;face=0_0_1200_600');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Release v4.1.1 &amp;middot; unpieceof/zeroboard4-php8&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;ZB4 for PHP8 Password() function 삭제에 따른 오류 수정&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;github.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&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;b&gt;2. 다운로드 한 파일의 압축 해제&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;==&amp;gt; 열심히 소스 수정 방법을 쓰다가.. 그냥 수정한 버전으로 위에 올려두었습니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;3. FTP 프로그램(FileZilla, 알FTP 등)으로 호스팅 신청한 경로의 html 폴더 하위에 다운 받은 파일 업로드&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;4. html 폴더의 권한을 707로 변경&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;✅ 제로보드4 설치&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;1. {개인 홈페이지 주소}/install.php로 접속&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;(예시) zb4test.dothome.co.kr/install.php&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;2. 안내에 따라 설치 진행&amp;nbsp;&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;3. 그룹 생성&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;4. 생성한 그룹 클릭 후 게시판 생성&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;---&amp;gt; 스킨 적용은 head.php, foot.php로 하면 되는데 .. 이 글에선 생략합니다.&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;‼️ 참고자료&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;제로보드4 스킨 : &lt;a href=&quot;https://inisland.tistory.com/?page=2&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://inisland.tistory.com/?page=2&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1721090079513&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;ssb rest...&quot; data-og-description=&quot; &quot; data-og-host=&quot;inisland.tistory.com&quot; data-og-source-url=&quot;https://inisland.tistory.com/?page=2&quot; data-og-url=&quot;https://inisland.tistory.com&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bQ7YhC/hyWCEY2lGK/Z2hz2V5k5DKIjsQ57KTiH0/img.png?width=400&amp;amp;height=400&amp;amp;face=0_0_400_400,https://scrap.kakaocdn.net/dn/l9Mk7/hyWzucHuXB/2IBvK1MKbBTpwMxY3KS340/img.png?width=400&amp;amp;height=400&amp;amp;face=0_0_400_400,https://scrap.kakaocdn.net/dn/7jxoT/hyWCOm2zUv/WKKy2oMWkYjAjJu8SkpyU1/img.png?width=549&amp;amp;height=527&amp;amp;face=0_0_549_527&quot;&gt;&lt;a href=&quot;https://inisland.tistory.com/?page=2&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://inisland.tistory.com/?page=2&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bQ7YhC/hyWCEY2lGK/Z2hz2V5k5DKIjsQ57KTiH0/img.png?width=400&amp;amp;height=400&amp;amp;face=0_0_400_400,https://scrap.kakaocdn.net/dn/l9Mk7/hyWzucHuXB/2IBvK1MKbBTpwMxY3KS340/img.png?width=400&amp;amp;height=400&amp;amp;face=0_0_400_400,https://scrap.kakaocdn.net/dn/7jxoT/hyWCOm2zUv/WKKy2oMWkYjAjJu8SkpyU1/img.png?width=549&amp;amp;height=527&amp;amp;face=0_0_549_527');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;ssb rest...&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;inisland.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&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>Web/Etc.</category>
      <category>제로보드4</category>
      <author>/* a piece of dev */</author>
      <guid isPermaLink="true">https://unpieceof.tistory.com/48</guid>
      <comments>https://unpieceof.tistory.com/48#entry48comment</comments>
      <pubDate>Mon, 15 Jul 2024 16:51:35 +0900</pubDate>
    </item>
    <item>
      <title>[ERR] Conda environment is empty</title>
      <link>https://unpieceof.tistory.com/45</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;text-generation-webui-high-resolution-logo-black.png&quot; data-origin-width=&quot;2000&quot; data-origin-height=&quot;1500&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/8MT2a/btsItm7nsAw/ldWSwniEhYnoVT5TelYtg0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/8MT2a/btsItm7nsAw/ldWSwniEhYnoVT5TelYtg0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/8MT2a/btsItm7nsAw/ldWSwniEhYnoVT5TelYtg0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F8MT2a%2FbtsItm7nsAw%2FldWSwniEhYnoVT5TelYtg0%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;600&quot; height=&quot;450&quot; data-filename=&quot;text-generation-webui-high-resolution-logo-black.png&quot; data-origin-width=&quot;2000&quot; data-origin-height=&quot;1500&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;  [Error] Conda environment is empty&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Oobabooga의 text-generation-webui 설치 중 강제 종료가 되어 다시 ./start_linux.sh를 실행시켰지만 Conda environment is empty 에러가 발생하며 진행되지 않았다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;✅ 해결 방안&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이전 설치 파일을 삭제 후 재설치하면 된다.&lt;/p&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;# 중단된 설치 파일 삭제
rm -r -f /root/text-generation-webui/installer_files

# 재설치
./start_linux.sh&lt;/code&gt;&lt;/pre&gt;</description>
      <category>DE/LLM</category>
      <category>conda</category>
      <category>oobabooga</category>
      <author>/* a piece of dev */</author>
      <guid isPermaLink="true">https://unpieceof.tistory.com/45</guid>
      <comments>https://unpieceof.tistory.com/45#entry45comment</comments>
      <pubDate>Wed, 10 Jul 2024 08:03:18 +0900</pubDate>
    </item>
    <item>
      <title>[ERR] CUDA unknown error - CUDA_VISIBLE_DEVICES ~</title>
      <link>https://unpieceof.tistory.com/44</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;img.jpg&quot; data-origin-width=&quot;1800&quot; data-origin-height=&quot;1550&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cvLDiq/btsIlmtrxCA/OPVSNslSny1cek9Kjhi2ek/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cvLDiq/btsIlmtrxCA/OPVSNslSny1cek9Kjhi2ek/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cvLDiq/btsIlmtrxCA/OPVSNslSny1cek9Kjhi2ek/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcvLDiq%2FbtsIlmtrxCA%2FOPVSNslSny1cek9Kjhi2ek%2Fimg.jpg&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;500&quot; height=&quot;431&quot; data-filename=&quot;img.jpg&quot; data-origin-width=&quot;1800&quot; data-origin-height=&quot;1550&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;  ./start_linux.sh에서 CUDA unknown error가 발생할 때&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;text-generation-web-ui를 사용하다가 gpu를 재부팅 했더니 갑자기 CUDA unknown error가 발생했다. 갑자기 되던 게 안 되어서 띠용? 했는데 쉽게 해결되었음&lt;/p&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;UserWarning: CUDA initialization: CUDA unknown error - =this may be due to an incorrectly set up environment, 
e.g. changing env variable CUDA_VISIBLE_DEVICES after program start. Setting the available devices to be zero.&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;✅ nvidia-uvm 모듈 재설치&lt;/b&gt;&lt;/h2&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;# 삭제
sudo rmmod nvidia_uvm 
# 재설치
sudo modprobe nvidia_uvm&lt;/code&gt;&lt;/pre&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;OS : Rocky Linux 9&lt;/li&gt;
&lt;li&gt;GPU : H100&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>DE/LLM</category>
      <category>cuda</category>
      <author>/* a piece of dev */</author>
      <guid isPermaLink="true">https://unpieceof.tistory.com/44</guid>
      <comments>https://unpieceof.tistory.com/44#entry44comment</comments>
      <pubDate>Wed, 3 Jul 2024 17:06:12 +0900</pubDate>
    </item>
    <item>
      <title>[PostgreSQL] Slow Query 조회, 취소</title>
      <link>https://unpieceof.tistory.com/43</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;postgresql_original_wordmark_logo_icon_146392.png&quot; data-origin-width=&quot;512&quot; data-origin-height=&quot;512&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bj0qMv/btsGWuq8ouu/NFkS5F2gfEp53sQxxrf2wK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bj0qMv/btsGWuq8ouu/NFkS5F2gfEp53sQxxrf2wK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bj0qMv/btsGWuq8ouu/NFkS5F2gfEp53sQxxrf2wK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbj0qMv%2FbtsGWuq8ouu%2FNFkS5F2gfEp53sQxxrf2wK%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;400&quot; height=&quot;400&quot; data-filename=&quot;postgresql_original_wordmark_logo_icon_146392.png&quot; data-origin-width=&quot;512&quot; data-origin-height=&quot;512&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;br&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;  PostgreSQL 접속 계정에서 오래 걸리는 쿼리 조회 SQL&lt;/b&gt;&lt;/h2&gt;
&lt;pre id=&quot;code_1714005678365&quot; class=&quot;sql&quot; data-ke-language=&quot;sql&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;SELECT current_timestamp - query_start AS runtime, datname, usename, pid, query
FROM pg_stat_activity
WHERE state = 'active' AND current_timestamp - query_start &amp;gt; '1 sec'
ORDER BY 1 DESC
;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;⛔ 쿼리 ID(PID)로 쿼리 중단 시키기&lt;/b&gt;&lt;/h2&gt;
&lt;pre id=&quot;code_1714005761909&quot; class=&quot;sql&quot; data-ke-language=&quot;sql&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;--프로세스 ID값을 이용한 정지
SELECT pg_cancel_backend('PID');
--상위 프로세스 까지 정지
SELECT pg_terminate_backend('PID') FROM pg_stat_activity;&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;위의 Slow Query 조회 SQL의 결과에서 PID 확인하여 중단할 수 있다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style2&quot;&gt;출처 : &lt;a href=&quot;https://wls3189.tistory.com/10&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://wls3189.tistory.com/10&lt;/a&gt;&lt;/blockquote&gt;</description>
      <category>DE/SQL</category>
      <category>PostgreSQL</category>
      <category>slowQuery</category>
      <category>sql</category>
      <author>/* a piece of dev */</author>
      <guid isPermaLink="true">https://unpieceof.tistory.com/43</guid>
      <comments>https://unpieceof.tistory.com/43#entry43comment</comments>
      <pubDate>Thu, 25 Apr 2024 09:43:15 +0900</pubDate>
    </item>
    <item>
      <title>[아보카도에디션] 닷홈 PHP 버전 에러 : Uncaught mysqli_sql_exception ~</title>
      <link>https://unpieceof.tistory.com/41</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;49sfXNhs_400x400.png&quot; data-origin-width=&quot;400&quot; data-origin-height=&quot;400&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bIzpvK/btsDARct9fX/OFcB24DiNKHLZ9GyvFXGjK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bIzpvK/btsDARct9fX/OFcB24DiNKHLZ9GyvFXGjK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bIzpvK/btsDARct9fX/OFcB24DiNKHLZ9GyvFXGjK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbIzpvK%2FbtsDARct9fX%2FOFcB24DiNKHLZ9GyvFXGjK%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;400&quot; height=&quot;400&quot; data-filename=&quot;49sfXNhs_400x400.png&quot; data-origin-width=&quot;400&quot; data-origin-height=&quot;400&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;  Fatal error: Uncaught mysqli_sql_exception&amp;nbsp;&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;제로보드와 xe를 거쳐 아보카도 에디션을 써볼까.. 하고 닷홈 호스팅을 받았는데 설치부터 막혔다. install 화면까진 잘 진행 되었는데, 관리자 로그인으로 넘어가지 않고 다음과 같은 에러와 마주쳤다.&lt;/p&gt;
&lt;pre class=&quot;html xml&quot; data-ke-language=&quot;html&quot;&gt;&lt;code&gt;Warning: Undefined array key &quot;article_default_table&quot; in /hosting/aroundof/html/common.php on line 262

Fatal error: Uncaught mysqli_sql_exception: You have an error in your SQL syntax; 
check the manual that corresponds to your MySQL server version for the right syntax to use near '' 
at line 1 in /hosting/aroundof/html/lib/common.lib.php:1558 Stack trace: #0 
/hosting/aroundof/html/lib/common.lib.php(1558): mysqli_query() #1 /hosting/aroundof/html/lib/common.lib.php(1580): sql_query() #2 /hosting/aroundof/html/common.php(262): sql_fetch() #3 /hosting/aroundof/html/_common.php(2): include_once('...') #4 /hosting/aroundof/html/main.php(2): include_once('...') #5 {main} thrown in /hosting/aroundof/html/lib/common.lib.php on line 1558&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;퍼스널, 라이트 모두 여러 번 재설치 해봤지만 영 ,, 해결이 안 되어서 이리저리 찾다가 닷홈의 기본 PHP 버전이 8.0인 걸 발견했다. 아보카도 에디션은&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;b&gt;언어셋 UTF-8, php 5.2 ~ 7.4 사이&lt;/b&gt;&lt;span style=&quot;background-color: #ffffff; color: #555555; text-align: start;&quot;&gt;에서만 정상 작동이 보장된다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;✅ 해결 방안 : PHP 버전 변경하기&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;www.dothome.co.kr_web_free_index.php.png&quot; data-origin-width=&quot;1480&quot; data-origin-height=&quot;523&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cPycAO/btsDAhitUXv/AmOFapWoTosZV6NLLafGR0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cPycAO/btsDAhitUXv/AmOFapWoTosZV6NLLafGR0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cPycAO/btsDAhitUXv/AmOFapWoTosZV6NLLafGR0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcPycAO%2FbtsDAhitUXv%2FAmOFapWoTosZV6NLLafGR0%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;1480&quot; height=&quot;523&quot; data-filename=&quot;www.dothome.co.kr_web_free_index.php.png&quot; data-origin-width=&quot;1480&quot; data-origin-height=&quot;523&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;무료/유료 호스팅 모두 PHP 7.4를 지원하므로, 7.4 버전으로 변경하면 된다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2000&quot; data-origin-height=&quot;783&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/vRkPL/btsDzvOLnrG/vKJW3vAI7DbVpoATIU5kBk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/vRkPL/btsDzvOLnrG/vKJW3vAI7DbVpoATIU5kBk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/vRkPL/btsDzvOLnrG/vKJW3vAI7DbVpoATIU5kBk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FvRkPL%2FbtsDzvOLnrG%2FvKJW3vAI7DbVpoATIU5kBk%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;2000&quot; height=&quot;783&quot; data-origin-width=&quot;2000&quot; data-origin-height=&quot;783&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1732&quot; data-origin-height=&quot;501&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/eywYa3/btsDAjm0BVK/x8yowgpsJY8xDABbbyZHo0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/eywYa3/btsDAjm0BVK/x8yowgpsJY8xDABbbyZHo0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/eywYa3/btsDAjm0BVK/x8yowgpsJY8xDABbbyZHo0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FeywYa3%2FbtsDAjm0BVK%2Fx8yowgpsJY8xDABbbyZHo0%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;1732&quot; height=&quot;501&quot; data-origin-width=&quot;1732&quot; data-origin-height=&quot;501&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;[마이닷홈] - 상세보기 - 웹서버/FTP 정보에서 PHP 버전을 7.4로 변경하고 다시 접속해보면 잘 된다!&lt;/p&gt;</description>
      <category>Web/Issues</category>
      <category>php</category>
      <category>닷홈</category>
      <category>아보카도에디션</category>
      <author>/* a piece of dev */</author>
      <guid isPermaLink="true">https://unpieceof.tistory.com/41</guid>
      <comments>https://unpieceof.tistory.com/41#entry41comment</comments>
      <pubDate>Wed, 17 Jan 2024 11:02:17 +0900</pubDate>
    </item>
    <item>
      <title>[ZeroBoard4] 관리자 등록, 로그인 오류 시(password)</title>
      <link>https://unpieceof.tistory.com/40</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;백그라운드.png&quot; data-origin-width=&quot;500&quot; data-origin-height=&quot;102&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/rTWdz/btsDs3ZERQr/fOzrZsBVgaUlcsjq4aFqKK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/rTWdz/btsDs3ZERQr/fOzrZsBVgaUlcsjq4aFqKK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/rTWdz/btsDs3ZERQr/fOzrZsBVgaUlcsjq4aFqKK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FrTWdz%2FbtsDs3ZERQr%2FfOzrZsBVgaUlcsjq4aFqKK%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;500&quot; height=&quot;102&quot; data-filename=&quot;백그라운드.png&quot; data-origin-width=&quot;500&quot; data-origin-height=&quot;102&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;b&gt;!!!! 2024.07.17 추가 - PHP8 설치 버전 게시글을 참조해주세요 !!!!&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;a href=&quot;https://unpieceof.tistory.com/48&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://unpieceof.tistory.com/48&lt;/a&gt;&lt;/b&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1721175727017&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;[Zeroboard4] 제로보드4 설치하기(2024년 개정판)&quot; data-og-description=&quot;  설치 전 사전 작업들어가기 전에.. .. 구시대의 유물인 제로보드4를 찾아 왔다는 건 기본적인 갠홈 지식은 있다는 가정 하에 진행합니다. 혹시 설정하시다가 문의사항 있으시면 편하게 댓글&quot; data-og-host=&quot;unpieceof.tistory.com&quot; data-og-source-url=&quot;https://unpieceof.tistory.com/48&quot; data-og-url=&quot;https://unpieceof.tistory.com/48&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/gJUTm/hyWzAxlofa/ooxFNdg1RxDjaluYGmcUb1/img.png?width=500&amp;amp;height=102&amp;amp;face=0_0_500_102,https://scrap.kakaocdn.net/dn/bV78S1/hyWCEdNJVS/WxzihQpVmCxS9mMGlXgCA1/img.png?width=500&amp;amp;height=102&amp;amp;face=0_0_500_102&quot;&gt;&lt;a href=&quot;https://unpieceof.tistory.com/48&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://unpieceof.tistory.com/48&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/gJUTm/hyWzAxlofa/ooxFNdg1RxDjaluYGmcUb1/img.png?width=500&amp;amp;height=102&amp;amp;face=0_0_500_102,https://scrap.kakaocdn.net/dn/bV78S1/hyWCEdNJVS/WxzihQpVmCxS9mMGlXgCA1/img.png?width=500&amp;amp;height=102&amp;amp;face=0_0_500_102');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;[Zeroboard4] 제로보드4 설치하기(2024년 개정판)&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;  설치 전 사전 작업들어가기 전에.. .. 구시대의 유물인 제로보드4를 찾아 왔다는 건 기본적인 갠홈 지식은 있다는 가정 하에 진행합니다. 혹시 설정하시다가 문의사항 있으시면 편하게 댓글&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;unpieceof.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;  제로보드 4.1 설치 중 넘어가지 않는 경우&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;오랜만에 개인 홈을 만들어보려고 제로보드4를 설치하는 중에 관리자 정보 입력에서 도저히 넘어가질 않았다. 정보를 모두 입력하고 [정보 입력 완료]를 누르면 You have an error in your SQL syntax... 하는 메시지만 나오는 상황~&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;aroundof.dothome.co.kr_install2.php.png&quot; data-origin-width=&quot;541&quot; data-origin-height=&quot;320&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bC2Nyk/btsDxKdPKZk/KVKIbRdprIzHR42gcjCukK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bC2Nyk/btsDxKdPKZk/KVKIbRdprIzHR42gcjCukK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bC2Nyk/btsDxKdPKZk/KVKIbRdprIzHR42gcjCukK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbC2Nyk%2FbtsDxKdPKZk%2FKVKIbRdprIzHR42gcjCukK%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;541&quot; height=&quot;320&quot; data-filename=&quot;aroundof.dothome.co.kr_install2.php.png&quot; data-origin-width=&quot;541&quot; data-origin-height=&quot;320&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;# 에러 메시지
You have an error in your SQL syntax; 
check the manual that corresponds to your MySQL server version for the right syntax to use near&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;MySQL8이 기존 제로보드4에서 사용하던 password() function을 지원하지 않아 발생하는 오류여서 가입, 로그인 관련 php 파일을 수정하여 해결했다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;✅ 해결 방안(install2_ok.php 수정)&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;FTP툴(ex. FileZilla, 알FTP 등)로 &lt;code&gt;/html/install2_ok.php&lt;/code&gt;를 우클릭 - 편집으로 열고, 다음 부분을 수정하고 저장한다.&lt;/p&gt;
&lt;pre class=&quot;php&quot; data-ke-language=&quot;php&quot;&gt;&lt;code&gt;// 관리자 정보 입력
	zb_query(&quot;insert into $member_table (user_id,password,name,is_admin,reg_date,level) values ('$user_id',password('$password1'),'$name','1','&quot;.time().&quot;','1')&quot;,$connect) or Error(zb_error(),&quot;&quot;);
---&amp;gt; 이 부분을 찾아서 다음과 같이 수정!
	zb_query(&quot;insert into $member_table (user_id,password,name,is_admin,reg_date,level) values ('$user_id',CONCAT('*', UPPER(SHA1(UNHEX(SHA1('$password1'))))),'$name','1','&quot;.time().&quot;','1')&quot;,$connect) or Error(zb_error(),&quot;&quot;);&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;code&gt;password('$password1')&lt;/code&gt;를 &lt;code&gt;CONCAT('*', UPPER(SHA1(UNHEX(SHA1('$password1')))))&lt;/code&gt;로 바꿔주면 된다.&lt;/p&gt;
&lt;h2 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;  Login시 [DB 질의 중 오류가 발생했습니다.] 오류 발생하는 경우&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;install2_ok.php를 수정하여 넘어가면 이제 Admin 로그인에서 다음과 같은 에러가 발생한다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imagegridblock&quot;&gt;
  &lt;div class=&quot;image-container&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/HrCzm/btsDrE0mnZ9/NM6Fr1jMTrJUIdnGpF7CZ1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/HrCzm/btsDrE0mnZ9/NM6Fr1jMTrJUIdnGpF7CZ1/img.png&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;362&quot; data-origin-height=&quot;238&quot; data-filename=&quot;aroundof.dothome.co.kr_admin.php.png&quot; style=&quot;width: 44.2023%; margin-right: 10px;&quot; data-widthpercent=&quot;44.72&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/HrCzm/btsDrE0mnZ9/NM6Fr1jMTrJUIdnGpF7CZ1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FHrCzm%2FbtsDrE0mnZ9%2FNM6Fr1jMTrJUIdnGpF7CZ1%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;362&quot; height=&quot;238&quot;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/NgwAl/btsDyA3imLj/0GlP2E488ngQ7LFInUTZd0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/NgwAl/btsDyA3imLj/0GlP2E488ngQ7LFInUTZd0/img.png&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;423&quot; data-origin-height=&quot;225&quot; data-filename=&quot;aroundof.dothome.co.kr_login_check.php.png&quot; data-widthpercent=&quot;55.28&quot; style=&quot;width: 54.635%;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/NgwAl/btsDyA3imLj/0GlP2E488ngQ7LFInUTZd0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FNgwAl%2FbtsDyA3imLj%2F0GlP2E488ngQ7LFInUTZd0%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;423&quot; height=&quot;225&quot;/&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;역시 password() 문제이므로, &lt;code&gt;/html/login_check.php&lt;/code&gt;를 열어 수정하고 저장한다.&lt;/p&gt;
&lt;pre class=&quot;php&quot; style=&quot;background-color: #f8f8f8; color: #383a42; text-align: start;&quot; data-ke-language=&quot;php&quot;&gt;&lt;code&gt;// 회원 로그인 체크
	$result = zb_query(&quot;select * from $member_table where user_id='$user_id' and password=password('$password'&quot;) or error(zb_error());
---&amp;gt; 이 부분을 찾아서 다음과 같이 수정!    
	$result = zb_query(&quot;select * from $member_table where user_id='$user_id' and password=CONCAT('*', UPPER(SHA1(UNHEX(SHA1('$password')))))&quot;) or error(zb_error());&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style2&quot;&gt;&lt;s&gt;설치까진 어찌어찌 했지만.. .. 그룹 생성에서 또 막혀서 제로보드4를 포기했다.&lt;/s&gt;&lt;br /&gt;&lt;s&gt;XE가 역시 편하고 쉬워 ~&lt;/s&gt;&lt;br /&gt;어라라.. 설치 성공했다ㅋㅋㅋ 한 발자국만 더 가면 됐었는데 너무 빨리 포기했었구나&lt;br /&gt;설치 방법은 따로 포스팅할게요~&lt;/blockquote&gt;</description>
      <category>Web/Issues</category>
      <category>MySQL</category>
      <category>ZeroBoard4</category>
      <category>제로보드4</category>
      <author>/* a piece of dev */</author>
      <guid isPermaLink="true">https://unpieceof.tistory.com/40</guid>
      <comments>https://unpieceof.tistory.com/40#entry40comment</comments>
      <pubDate>Tue, 16 Jan 2024 14:16:00 +0900</pubDate>
    </item>
  </channel>
</rss>