본문 바로가기

전체 글23

ChatGPT API Postman으로 테스트하기 서론 회사에서 ChatGPT를 프로젝트에 도입할 수 있는지 확인 중에, ChatGPT API 설정하는 방법을 기록해두려 합니다. 방법 방법은 간단합니다. 1. OpenAI API Key 발급받기 2. Postman 설정 및 Request 1. OpenAI API Key 발급받기 아래 주소에 접속하여 API Key를 발급받습니다. 주의할 점은, 최초 1회만 보여주므로, 나중에 해당 Key를 가지고 서비스를 만들 계획이 있으시다면, 반드시 메모해두시기 바랍니다. https://platform.openai.com/account/api-keys OpenAI API An API for accessing new AI models developed by OpenAI platform.openai.com 2. Postm.. 2023. 3. 6.
프로그래머스 42626번 더 맵게 문제 https://school.programmers.co.kr/learn/courses/30/lessons/42626 풀이 최대값, 최소값이 나오는 문제는 Heap을 사용하면 됩니다. Java에서는 Heap 대신에 PriorityQueue를 사용할 수 있습니다. 최소/최대값 확인: PriorityQueue.peek() 최소/최대값 추출 및 확인: PriorityQueue.poll() 시간 복잡도는 최초 항목 수만큼 순회하니 n, n-1만큼 순회하면서 최소값 2개 뽑고(2), 계산된 스코빌 값을 다시 add(logn) 하므로, n + n(2 + logn) = O(3n + nlogn) 이 되겠습니다. 배열을 사용했으면 O(n^2)가 되었을 것입니다. import java.util.*; class Solut.. 2022. 8. 28.
MySQL - Create Function 무한 로딩 현상 현상 Create Function 시 무한 로딩되는 현상 MySQL 콘솔로 들어가서 SHOW PROCESSLIST로 조회해보면, 해당 명령어에 대하여 Waiting for stored function metadata lock 메시지가 나옵니다. 해당 현상은, DBeaver, MySQL Workbench, 직접 콘솔 로그인해도 동일하게 발생했습니다. 환경 Docker mysql:8.0.22 container 해결방법 함수명을 대문자 + underscore(_) 방식이 아닌 camelcase로 작성하기 수행 중인 프로젝트에서 Oracle DB를 쓰다 보니, 습관적으로 대문자 + underscore 방식으로 함수를 작성했는데, 이것저것 시도하다 보니, 함수명이 문제라는 것을 확인했습니다. 수정 전 함수명(무한.. 2022. 8. 28.
프로그래머스 12906번 같은 숫자는 싫어 문제 https://school.programmers.co.kr/learn/courses/30/lessons/12906 풀이 시간복잡도 O(n)의 문제로, 현재 값을 따로 저장하여 비교하거나, stack을 이용하면 간단히 해결 가능한 문제입니다. import java.util.*; public class Solution { public int[] solution(int[] arr) { ArrayList distinctList = new ArrayList(); distinctList.add(arr[0]); for(int i = 1; i < arr.length; ++i) { if(distinctList.get(distinctList.size()-1) != arr[i]) { distinctList.add(ar.. 2022. 8. 22.