728x90
반응형

전체 글 156

프로그래머스 - Level 1. 개인정보 수집 유효기간 / JavaScript (js)

문제설명 문제분석 파라미터는 순서대로 오늘 날짜, 각 약관별 유효기간, 약관별 사인한 날짜가 전달됩니다. 이 작업은 한 명에 대한 작업이고, 한 명이 사인한 약관에 대해 오늘날짜로 확인하는 작업이 진행됩니다. 문제를 풀기에 앞서, 만약 내가 실무에서 이런 작업을 진행한다고 생각해봤습니다. 아마 나는 매일 한번씩 모든 사용자에 대해 이 함수를 실행하는 대신, 매월이나 매년 또는 사인하는 순간에 큐잉할 거 같습니다. 당연히 개인정보보호법이 강화되어 시행되는 조치인만큼, 처음부터 약관을 파기하는 로직이 필요하진 않았을 것입니다. 따라서 레거시한 데이터를 바탕으로 위 작업이 진행될 것이고, 최초의 1회에 한해서는 모든 사용자를 대상으로 반드시 이 함수를 실행해야한다고 추론할 수 있습니다. 그럼에도 불구하고 시행..

프로그래머스 - Level 2. 모음 사전 / JavaScript (js)

문제설명 문제분석 지금까지 업로드한 코테 문제는 전부 완전 탐색 카테고리에 포함되어 있습니다. 그래서 당연히 이 문제도 완전 탐색일거라 생각했는데... 왠걸요. 이 문제는 일반항을 구할 수 있으면 훨씬 간단하게 풀 수 있는 문제입니다. 먼저 이 문제는 제한 조건이 있고, 일련의 규칙을 갖는다는 게 어렴풋이 느껴집니다. 그럼 뭐 별 수 있나요. 머리로 하든 손으로 하든 규칙을 찾기 위한 노가다 시작입니다. 먼저 가장 작은 경우부터 확인합니다. 맨 마지막(5번째) 자리의 모음의 인덱스가 커지려면 카운트가 1씩 늘어납니다. 그 다음은 4번째 자리의 모음의 인덱스가 커지는 경우입니다. 가장 마지막 자리의 모음 인덱스가 전부 존재하는 경우는 5가지이고, 존재하지 않는 경우 1가지를 더해 총 6가지가 존재합니다. ..

Open AI의 chatGPT API를 기다리며 | Node.js로 내 CLI 속 GPT-3 챗봇 만들기 (openAI API 사용하기)

GPT-3 란? GPT-3(Generative Pre-trained Transformer 3)은 OpenAI에서 개발한 인공 지능 언어 모델입니다. 대규모 딥 러닝 시스템을 사용하여 인간과 유사한 텍스트를 생성합니다. 수백만 개의 웹 페이지와 책으로 구성된 데이터 세트에서 훈련되었으며 주어진 주제에 대한 텍스트를 생성할 수 있습니다. GPT-3는 사람이 쓴 텍스트와 거의 구별할 수 없는 텍스트를 생성할 수 있습니다. 따라서 텍스트 완성, 질문 답변, 요약 및 번역과 같은 다양한 작업에 사용할 수 있습니다. GPT-3는 또한 극소수의 예에서 일반화하는 능력이 있어 언어 이해가 필요한 다양한 작업에 유용합니다. Open AI API 톺아보기 이번 포스팅에서는 openAI의 API, 그 중에서도 GPT-3 A..

프로그래머스 - Level 2. 전력망을 둘로 나누기 / JavaScript (js)

문제설명 문제분석 각각의 송전탑을 노드라고 생각하면, 각 노드와 간선의 관계를 이루고 있는 기존 n개의 송전탑이 주어집니다. 이때 간선을 하나씩 제거해가면서 분리된 두 개의 그룹에 포함된 노드의 차를 구하고, 구해진 결과 중 최솟값을 리턴하는 문제입니다. 문제가 어려우니 조금 나눠서 적어보겠습니다. 모든 노드는 간선으로 이어져 있다. 각 노드는 최소 1개 이상의 간선이 존재한다. 노드와 노드를 이어주는 간선을 하나 제거하고, 이때 분리된 그룹의 노드 수를 비교한다. 결과값은 비교한 값 중에서 가장 작은 값이어야 한다. 문제를 단순화 했으니 이해하기 쉽게 코드를 짜보겠습니다. 이해하기 쉽게 코드작성하기 이 문제는 여러 방법으로 접근할 수 있습니다. 기본적으로 그래프의 모든 노드를 탐색해야하는 문제인 만큼 ..

Open AI의 chatGPT API를 기다리며 | chatGPT 개요

요약 ChatGPT는 대화형 텍스트를 처리하기 위해 OpenAI에서 개발한 AI 언어 모델입니다. Transformer 아키텍처를 사용하고 대량의 텍스트 데이터에 대해 훈련되어 고품질 텍스트 응답을 생성할 수 있습니다. ChatGPT는 질문에 답하거나 텍스트를 생성하는 등의 특정 작업에 맞게 미세 조정할 수 있어 유연하고 다용도로 사용할 수 있습니다. 주요 응용 프로그램에는 대화형 에이전트, 챗봇, 가상 비서 및 텍스트 생성 도구 구축이 포함됩니다. ChatGPT는 언어의 맥락과 구조를 이해하고 일관되고 적절하며 인간과 유사한 응답을 생성하는 능력으로 인해 광범위한 잠재적 응용이 가능한 흥미로운 기술입니다. ChatGPT는 OpenAI에서 개발한 AI 기반 언어 모델입니다. 이것은 대량의 텍스트 데이터에..

프로그래머스 - Level 2. 피로도 / JavaScript (js)

문제설명 문제분석 모든 던전에는 최소 필요 피로도와 소모 피로도가 존재한다. 최소 필요 피로도보다 현재 남아있는 피로도가 적다면, 해당 던전을 탐색할 수 없다. 당연히 소모 피로도보다 현재 남아있는 피로도가 더 높아야 하며, 가장 효율적으로 많은 던전을 탐색하기 위한 방법을 찾는 문제이다. 말이 조금 어려운 거 같아서 풀어보자면 다음과 같다. 모든 던전에는 [최소 필요 피로도, 소모 피로도]가 존재한다. 모든 던전을 순차적으로 탐색할 때, 가장 많은 던전을 탐색할 수 있어야 한다. 각 던전에 방문하는 모든 경우의 수 중에서, 가장 많은 던전을 탐색하는 경우를 찾는다. 이때 방문할 수 있는 가장 많은 던전의 수가 정답이다. 문제를 단순화 했으니 이해하기 쉽게 코드를 짜보자. 이해하기 쉽게 코드작성하기 fu..

카테고리 없음 2023.02.07

도서 [추천 알고리즘의 과학]을 소개합니다.

추천 알고리즘의 과학 / 저자 박규하 네 제 책이 나왔습니다. 사실 책을 쓴다는 미명하에 블로그도 소홀히했었는데요. 작년 11월에 드디어 책이 출간되었습니다. 이 자리를 빌어 먼저 집필을 권해주신 로드북 임성춘 대표님께 감사의 말씀을 전합니다. 이 책에서는 추천 알고리즘의 기본 원리부터 우리 생활속에서 쉽게 접하지만 알쏭달쏭했던 추천 알고리즘을 설명하고 있어요. 쉽게 설명하려고 노력했고요, 이해하고나서 활용하는 방법도 작성해두었습니다. 예를 들어 인스타그램 인플루언서가 되기 위해 해야하는 활동이나, 유튜브 구독자 수를 늘리기 위한 활동같은 방법말이죠. 구매링크는 여기를 클릭하세요! 컴퓨터를 공부하는 학생이나 개발자뿐만 아니라, IT 산업을 이끌어가는 기획자, 마케터, 데이터 사이언티스트, 저널리스트 등 ..

Algorithm 2023.02.07

프로그래머스 - Level 1. 최소직사각형 / JavaScript (js)

문제설명 - 최소직사각형 문제분석 모든 명함에는 가로길이와 세로길이가 존재하며, 가로 또는 세로의 길이가 각각 가장 긴 명함의 변을 구해 가장 작은 지갑의 면적을 리턴하는 문제이다. 말이 조금 어려운 거 같아서 풀어보자면 다음과 같다. 모든 명함에는 가로길이와 세로길이가 있다. 일반적인 명한은 가로 길이가 더 길지만, 간혹 세로길이가 더 긴 명함도 존재한다. 세로길이가 더 긴 명함을 옆으로 돌려서(세로길이와 가로길이를 스왑해서) 보관할 수 있다. 위 모든 경우를 포함하는 동시에, 입력된 모든 크기의 명함을 보관할 수 있는 가장 작은 지갑을 만들어야 한다. 결과값은 명함의 가장 긴 가로길이 x 가장 긴 세로길이여야 한다. (이때 3번이 이미 적용된 상태여야 한다.) 문제를 단순화 했으니 이해하기 쉽게 코드..

NFT 구매 전 준비사항 - 암호화폐와 지갑생성

위 이미지는 제 콜렉션입니다. oncyber/gray에서 확인할 수 있습니다. 안녕하세요! Gray 입니다. 이번 콘텐츠는 NFT에 사용되는 암호화폐를 구매하는 방법을 안내합니다. 이미 암호화폐를 거래할 줄 아시는 분이라면 스킵해도 좋습니다! 암호화폐와 블록체인 지난 9월, 특금법이 시행되면서 4개의 거래소를 통해 현금으로 암호화폐를 구매할 수 있습니다. 외국의 경우 암호화폐를 구매하는 데에 신용카드를 사용할 수 있지만, 아쉽게도 우리나라는 현금(계좌이체)으로만 암호화폐를 구매할 수 있습니다. 암호화폐는 블록체인 위에서 거래에 사용되는 화폐입니다. 미국에서는 달러를 쓰고, 중국에서는 위안화를 쓰고, 한국에서는 원화를 쓰고, 일본에서는 엔화를 쓰는 것처럼, 클레이튼, 이더리움, 카르다노, 테라, 솔 등 체..

Blockchain 2021.10.09
728x90
반응형