링크: https://www.acmicpc.net/problem/1629 1629번: 곱셈 첫째 줄에 A, B, C가 빈 칸을 사이에 두고 순서대로 주어진다. A, B, C는 모두 2,147,483,647 이하의 자연수이다. www.acmicpc.net 아이디어1 (시간초과) 일단 단순하게 b번 반복하며 a 곱하기 파이썬은 자동으로 동적할당이 되어 너무 큰 수가 나오면 메모리초과가 나올 수 있음 a를 곱하고 c로 바로바로 나눠주며 메모리초과 방지 import sys input= sys.stdin.readline a, b, c = map(int, input().split()) for i in range(b): a *= a a %= c print(a) 단순히 반복하는 로직은 답이 아닌듯 하다. 아이디어 2 ..
Tistory API 사용법 가이드 Tistory API는 Tistory 블로그와 상호작용하며 글 작성, 수정, 삭제 등 다양한 작업을 수행할 수 있는 강력한 도구입니다. 이번 포스팅에서는 Tistory API를 사용하는 방법을 자세히 알아보겠습니다. 1. Tistory API 등록 및 인증 Tistory API를 사용하려면 먼저 Tistory 개발자 사이트에서 애플리케이션을 등록하고 인증 정보를 받아야 합니다. 다음 단계를 따라 진행하세요. Tistory 개발자 사이트에 로그인하고 애플리케이션을 등록합니다. 등록한 애플리케이션에서 발급받은 클라이언트 아이디와 시크릿 키를 얻습니다. OAuth 인증을 통해 액세스 토큰을 발급받아 API 요청에 사용합니다. 2. Tistory API 요청 예제 다음은 파이..
블로그 포스팅을 작성하려면 시간과 노력이 필요합니다. 하지만 인공지능 기술을 활용하여 GPT API를 활용한다면, 효과적으로 블로그 포스팅을 자동으로 생성할 수 있습니다. 이번 포스팅에서는 파이썬을 사용하여 GPT API를 활용해 블로그 포스팅을 자동으로 작성하는 방법을 알아보겠습니다. 1. GPT API 소개 GPT API는 OpenAI에서 개발한 자연어 생성 모델을 웹 서비스 형태로 제공하는 API입니다. 이를 활용하면 다양한 주제에 대한 글을 생성할 수 있습니다. 2. GPT API 사용 방법 GPT API를 사용하여 블로그 포스팅을 자동 생성하는 과정은 다음과 같습니다. 2.1. GPT API 엑세스 토큰 발급 먼저, OpenAI의 GPT API를 사용하기 위해 엑세스 토큰을 발급받아야 합니다. ..
파이썬을 이용한 웹 스크래핑 시작하기웹 스크래핑은 웹 페이지에서 정보를 추출하거나 데이터를 수집하는 프로세스입니다. 파이썬은 웹 스크래핑을 위한 강력한 도구들을 제공하므로, 이번 포스팅에서는 파이썬을 사용한 간단한 웹 스크래핑 예제를 살펴보겠습니다.1. 필요한 라이브러리 설치웹 스크래핑을 위해 requests와 BeautifulSoup 라이브러리를 사용하겠습니다. 아래 명령을 사용하여 두 라이브러리를 설치하세요.pip install requests beautifulsoup42. 웹 페이지 접속 및 데이터 추출다음은 예제 코드입니다. 이 코드는 "http://quotes.toscrape.com" 웹 페이지에서 명언(Quotes)을 추출하는 간단한 스크래핑을 수행합니다.import requests from ..
링크: https://school.programmers.co.kr/learn/courses/30/lessons/43163?language=python3 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 아이디어 words에 target단어가 없는 경우 0 반환 첫 bfs를 시작할 시작 노드 찾기( begin에서 갈 수 있는 문자들) for문을 이용해 1번 조건을 만족하는 단어를 찾음 위와 같은 방식으로 그래프를 만들어 BFS를 진행 방문처리를 깊이 표현과 동시에 진행 target노드가 나오면 현재 노드의 깊이 출력 자료구조 Queue(BFS) 방문: int ..
1. 네이버 Developers api key 발급받기 https://developers.naver.com/main/ NAVER Developers 네이버 오픈 API들을 활용해 개발자들이 다양한 애플리케이션을 개발할 수 있도록 API 가이드와 SDK를 제공합니다. 제공중인 오픈 API에는 네이버 로그인, 검색, 단축URL, 캡차를 비롯 기계번역, 음 developers.naver.com 링크 접속 후 로그인 해주세요 Application -> 어플리케이션 등록 클릭 어플리 케이션 이름을 입력 사용 API는 언어감지와 번역을 모두 선택 2. 코드 구현 (예시) import json import urllib.request from secret import * def get_translate(text): l..
1. key 발급받기 https://platform.openai.com/ 위 사이트 접속 -> Personal -> View API keys 클릭 Create new secret key 클릭 후 secret key 생성 (key는 복사해서 메모장 같은 곳에 저장해 두면 편함) Billing -> overview에서 결재수단 등록 (7340원이 빠져나감.) 2. 환경 설정 pip install openai openai를 사용하기 위해 install 해줍니다. 3. 예시코드 # 발급받은 API 키 설정 OPENAI_API_KEY = "복사해둔 key값 입력" # openai API 키 인증 openai.api_key = OPENAI_API_KEY # 모델 - GPT 3.5 Turbo 선택 model = "g..
링크: https://www.acmicpc.net/problem/7576 7576번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 M,N이 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M,N ≤ 1,000 이다. 둘째 줄부터는 하나의 상자에 저장된 토마토 www.acmicpc.net 아이디어 익은 토마토(1)의 좌표들를 q에 넣고 bfs 숨바꼭질과 동일하게 방문처리와 깊이 저장을 동시에 진행 (이건 토마토 배열 안에서 해도 될듯) 상하좌우 확인 0이면 1로 변경 후 큐에 넣기, 1이면 무시, -1이어도 무시 모든 토마토가 익었는지와 며칠이 걸렸는지는 배열을 돌며 확인 0인 부분이 있으면 -1출력 자료구조 토마토: int[][] Queue(BFS) 코드구..
링크: https://www.acmicpc.net/problem/12851 12851번: 숨바꼭질 2 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 때 www.acmicpc.net 아이디어 수빈이의 시작점을 시작으로 bfs x-1, x+1, 2*x 이 3가지 방향으로 이어지는 그래프로 생각 방문했던 수는 방문처리를 해주어 탐색하지 않기 몇번째 층인지 확인은 방문 처리와 동시에 이루어짐 전 요소의 방문 인덱스에 +1한 값을 현재 요소의 방문 인덱스에 저장 동생의 위치에 도착하는 경우가 발생하면 그 요소의 층을 따로 저장 다음 층 탐..