일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 우분투
- 파이썬
- 더현대서울 맛집
- github
- hackerrank
- 자연어처리
- gs25
- leetcode
- Real or Not? NLP with Disaster Tweets
- PYTHON
- Git
- AI 경진대회
- Baekjoon
- 프로그래머스 파이썬
- 백준
- ubuntu
- Kaggle
- Docker
- 캐치카페
- 맥북
- 프로그래머스
- dacon
- SW Expert Academy
- ChatGPT
- 편스토랑 우승상품
- programmers
- 코로나19
- 편스토랑
- 데이콘
- 금융문자분석경진대회
- Today
- Total
목록
반응형
PYTHON (460)
솜씨좋은장씨

1일 1문제! 98일차! 오늘의 문제는 백준의 큐 입니다. 10845번: 큐 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 �� www.acmicpc.net Solution my_queue = [] command_list = [] num = input() for i in range(int(num)): command = input() command_list.append(command) for command in command_list: cmd = command.split() if cmd[0] == 'push': my_queue.append(..

The string "PAYPALISHIRING" is written in a zigzag pattern on a given number of rows like this: (you may want to display this pattern in a fixed font for better legibility) P A H N A P L S I I G Y I R And then read line by line: "PAHNAPLSIIGYIR" Write the code that will take a string and make this conversion given a number of rows: string convert(string s, int numRows); Example 1: Input: s = "PA..

1일 1문제 96일차! 오늘의 문제는 백준의 듣보잡입니다. 1764번: 듣보잡 첫째 줄에 듣도 못한 사람의 수 N, 보도 못한 사람의 수 M이 주어진다. 이어서 둘째 줄부터 N개의 줄에 걸쳐 듣도 못한 사람의 이름과, N+2째 줄부터 보도 못한 사람의 이름이 순서대로 주어진다. �� www.acmicpc.net Solution N, M = map(int, input().split()) people_no_hear = [] people_no_look = [] for i in range(N): name = str(input()) people_no_hear.append(name) for i in range(M): name = str(input()) people_no_look.append(name) no_hear..

Given a string, find the length of the longest substring without repeating characters. Example 1: Input: "abcabcbb" Output: 3 Explanation: The answer is "abc", with the length of 3. Example 2: Input: "bbbbb" Output: 1 Explanation: The answer is "b", with the length of 1. Example 3: Input: "pwwkew" Output: 3 Explanation: The answer is "wke", with the length of 3. Note that the answer must be a su..

1일 1문제 94일차! 오늘의 문제는 가장 긴 증가하는 부분수열입니다. 11053번: 가장 긴 증가하는 부분 수열 수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {10, 20, 10, 30, 20, 50} 인 경우에 가장 긴 증가하는 부분 수열은 A = {10, 20, 10, 30, 20, 50} 이 www.acmicpc.net Solution inputNum = int(input()) inputNums = input() inputNums = inputNums.split() inputNums = [int(num) for num in inputNums] nc = [0] * (inputNum) maxNum = 0 for i in range(0,..

1일 1문제 92일차! 오늘의 문제는 백준의 에디터 입니다. 1406번: 에디터 문제 한 줄로 된 간단한 에디터를 구현하려고 한다. 이 편집기는 영어 소문자만을 기록할 수 있는 편집기로, 최대 600,000글자까지 입력할 수 있다. 이 편집기에는 '커서'라는 것이 있는데, 커서는 문장의 맨 앞(첫 번째 문자의 왼쪽), 문장의 맨 뒤(마지막 문자의 오른쪽), 또는 문장 중간 임의의 곳(모든 연속된 두 문자 사이)에 위치할 수 있다. 즉 길이가 L인 문자열이 현재 편집기에 입력되어 있으면, 커서가 위치할 수 있는 곳은 L+1가지 경우가 www.acmicpc.net Solution import sys from collections import deque class Editor: def __init__(self..

Python과 bulk API를 활용하여 인덱싱을 하던 중 elasticsearch.exceptions.ConnectionTimeout: ConnectionTimeout caused by - ReadTimeoutError(HTTPConnectionPool(host='localhost', port=9200): Read timed out. (read timeout=10)) 위와 같은 오류가 나면서 중간에 멈추는 현상이 계속 생겨 14만건의 데이터를 인덱싱하여야하지만 계속 3만건에서 멈추는 현상이 있었습니다. 이 문제는 연결 시간을 초과했을때 발생한다고 합니다. 해당하는 변수값은 es_client = ElasticSearch("http://localhost:9200") Elasticsearch를 연결하는 위의..

1일 1문제 90일차! 오늘의 문제는 GCD 합 입니다. 9613번: GCD 합 문제 양의 정수 n개가 주어졌을 때, 가능한 모든 쌍의 GCD의 합을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 테스트 케이스의 개수 t (1 ≤ t ≤ 100)이 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있다. 각 테스트 케이스는 수의 개수 n (1 0: a = b b = mod mod = a%b return ..

Flask로 API를 만들던 중 (venv) (base) DongHyunui-MacBook-Pro:ElasticsearchAPI donghyunjang$ python3 app.py * Serving Flask app "app" (lazy loading) * Environment: production WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead. * Debug mode: on Traceback (most recent call last): File "app.py", line 97, in app.run(host='0.0.0.0', debug=Tr..

1일 1문제 89일차! 오늘의 문제는 백준의 네 수 입니다. 10824번: 네 수 첫째 줄에 네 자연수 A, B, C, D가 주어진다. (1 ≤ A, B, C, D ≤ 1,000,000) www.acmicpc.net Solution A, B, C, D = map(str, input().split()) intAB = int(A+B) intCB = int(C+D) print(intAB + intCB) SOMJANG/CODINGTEST_PRACTICE 1일 1문제 since 2020.02.07. Contribute to SOMJANG/CODINGTEST_PRACTICE development by creating an account on GitHub. github.com

1일 1문제 88일차! 오늘의 문제는 백준의 곱셈입니다. 1629번: 곱셈 첫째 줄에 A, B, C가 빈 칸을 사이에 두고 순서대로 주어진다. A, B, C는 모두 2,147,483,647 이하의 자연수이다. www.acmicpc.net 첫번째 제출 A, B, C = map(int, input().split()) print((A**B) % C) 쉬운문제다! 라고 좋아했는데 엥...? 시간초과 결과를 볼 수 있었습니다. 두번째 제출 A, B, C = map(int, input().split()) print(pow(A, B) % C) 이전에 pow가 ** 보다 빠르다고 했던 것이 기억나서 **를 pow로 바꾸어 도전했지만 여전히 시간초과 결과가 나왔습니다. 세번째 제출 A, B, C = map(int, in..

1일 1문제 86일차! 오늘의 문제는 프로그래머스의 최댓값과 최솟값 입니다. 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Solution def solution(s): answer = '' num_list = list(map(int, s.split(' '))) min_num = min(num_list) max_num = max(num_list) answer = str(min_num) + " " + str(max_num) return answer SOMJANG/CODINGTEST_PRACTICE 1일 1문제 since 2020.02.07. Contribu..

HackerLand University has the following grading policy: Every student receives a grade in the inclusive range from 0 to 100. Any grade less than 40 is a failing grade. Sam is a professor at the university and likes to round each student's grade according to these rules: If the difference between the grade and the next multiple of 5 is less than 3, round grade up to the next multiple of 5. If the..

1일 1문제 62일차! 오늘의 문제는 백준의 스티커입니다. 9465번: 스티커 문제 상근이의 여동생 상냥이는 문방구에서 스티커 2n개를 구매했다. 스티커는 그림 (a)와 같이 2행 n열로 배치되어 있다. 상냥이는 스티커를 이용해 책상을 꾸미려고 한다. 상냥이가 구매한 스티커의 품질은 매우 좋지 않다. 스티커 한 장을 떼면, 그 스티커와 변을 공유하는 스티커는 모두 찢어져서 사용할 수 없게 된다. 즉, 뗀 스티커의 왼쪽, 오른쪽, 위, 아래에 있는 스티커는 사용할 수 없게 된다. 모든 스티커를 붙일 수 없게된 상냥이는 각 스티커에 점 www.acmicpc.net Solution loopNum = int(input()) for i in range(loopNum): inputNum = int(input()) ..

Python에서는 다양한 방법을 통해 암호화 관련 알고리즘을 구현할 수 있습니다. 그 중 cryptography의 Fernet을 활용한 대칭키 암호화 알고리즘을 해보려합니다. 대칭키 암호화 방식 먼저 대칭키 암호화 방식 ( symmetric-key algorithm)은 암호화와 복호화에 같은 암호키를 사용하는 알고리즘 입니다. 이에 암호화를 하는 측과 복호화를 하는 측이 같은 암호키를 공유해야합니다. 공개키 암호화 방식에 비하여 계산 속도가 빠르다는 장점이 있습니다. 공개키 암호화 방식 공개키와 비밀키 두가지의 키가 존재하며 공개키는 누구나 알 수 있지만 그에 대응하는 비밀키는 키의 소유자만이 알 수 있습니다. 공개키를 구성하는 알고리즘은 비대칭 암호라고 부르기도 합니다. 사전에 비밀키를 나눠가지지 않아..

파이썬을 여행하는 히치하이커를 위한 안내서에 나온 PyCrpyto 코드를 실습하다가 다음의 오류를 만나게 되었습니다. 실습 코드 from Crypto.Cipher import AES encryption_suite = AES.new('This is a key123', AES.MODE_CBC, 'This is an IV456') chiper_text = encryption_suite.encrypt("aaaaaaaaaaaaaaaaa") decryption_suite = AES.new('This is a key123', AES.MODE_CBC, 'This is an IV456') plain_text = decryption_suite.decrypt(chiper_text) Error ... 생략 ValueError..

Consider an array of integers, arr = [ arr [0], arr [1], ... , arr [n - 1]]. We define the absolute difference between two elements, a[i] and a[j] (where i != j), to be the absolute value of a[i] - a[j]. Given an array of integers, find and print the minimum absolute difference between any two elements in the array. For example, given the array arr = [ -2, 2, 4 ] we can create 3 pairs of numbers..

1. Anaconda 설치파일 다운로드 Anaconda Python/R Distribution - Free Download Anaconda Distribution is the world's most popular Python data science platform. Download the free version to access over 1500 data science packages and manage libraries and dependencies with Conda. www.anaconda.com 먼저 위의 링크로 이동합니다. 나오는 페이지에서 아래로 내려 Windows를 선택하고 Python 3.7 version 에서 64-Bit Graphical Installer (466MB)를 선택하여 파일을..

Python 설치 시, Add Python 3.7 to PATH를 선택하지 않았다면 따로 Windows에서 환경변수를 설정해주어야합니다. 먼저 맨 왼쪽 아래 윈도우 모양 시작버튼에서 오른쪽 마우스를 클릭한 뒤 시스템 메뉴를 선택합니다. 나오는 시스템 페이지에서 고급 시스템 설정을 클릭합니다. 환경 변수를 클릭합니다. 시스템 변수의 Path를 선택하고 편집을 클릭합니다. 새로 만들기를 클릭합니다. Python 3.7.3이 설치된 위치와 그 폴더 안의 Script 폴더의 두 가지 경로를 복사하여 두 경로 다 추가해줍니다. 경로는 위의 사진을 참고하여 복사하시면 좋을 것 같습니다. 위의 파란 블록이 Python37 폴더 그리고 아래의 블록이 Script 폴더입니다. 추가 후 확인을 클릭하여 설정을 완료합니다...

1. Python 3.7.3 설치파일 다운로드 Welcome to Python.org The official home of the Python Programming Language www.python.org 먼저 Python 홈페이지로 이동합니다. Download 메뉴를 클릭하여 Download 페이지로 이동합니다. Python 3.7.3 을 선택합니다. 그럼 나오는 이 페이지에서 Windows x86-64 executable installer을 클릭하여 다운로드 받습니다. 2. Python 3.7.3 설치 다운로드 받은 파일을 확인하고 실행합니다. Install Now를 클릭합니다. 여기서 Python 환경변수를 자동으로 설정하실 분들은 Add Python 3.7 to PATH를 선택하고 개별적으로 환..

Python에서 사용할 수 있는 데이터베이스 라이브러리 중 Sqlite3 의 사용법에 대해서 정리해보고자 합니다. sqlite3 — SQLite 데이터베이스용 DB-API 2.0 인터페이스 — Python 3.8.2 문서 바로 가기 메서드 사용하기 Connection 객체의 비표준 execute(), executemany() 및 executescript() 메서드를 사용하면, (종종 불필요한) Cursor 객체를 명시적으로 만들 필요가 없으므로, 코드를 더 간결하게 작성할 수 있습니다. 대신, Cursor 객체가 묵시적으로 만들어지며 이러한 바로 가기 메서드는 커서 객체를 반환합니다. 이런 방법으로, Connection 객체에 대한 단일 호출만 사용하여 SELECT 문을 docs.python.org Sq..

You are in charge of the cake for your niece's birthday and have decided the cake will have one candle for each year of her total age. When she blows out the candles, she’ll only be able to blow out the tallest ones. Your task is to find out how many candles she can successfully blow out. For example, if your niece is turning 4 years old, and the cake will have 4 candles of height 4, 4, 1, 3, sh..

[Python] Pycharm에서 unittest 사용해보기! Pycharm에서 unittest를 사용하는 방법에 대해서 정리해보려합니다. Step 3. Test your first Python application - Help | PyCharm Step 3. Test your first Python application Remember, in the first tutoria.. somjang.tistory.com 지난 글에서 테스트를 하면서 오류났던 부분을 디버깅을 통해서 고쳐보려합니다. Testing started at 5:53 오후 ... /Users/donghyunjang/PycharmProjects/MyTestPractice/venv/bin/python "/Applications/PyCharm ..

Pycharm에서 unittest를 사용하는 방법에 대해서 정리해보려합니다. Step 3. Test your first Python application - Help | PyCharm Step 3. Test your first Python application Remember, in the first tutorial you’ve created your first Python application, and in the second tutorial you’ve debugged it. Now it’s time to do some testing. Choosing the test runner If you used nosetest, py.test www.jetbrains.com 위의 문서를 참조하여 작성하였습니다...

Given five positive integers, find the minimum and maximum values that can be calculated by summing exactly four of the five integers. Then print the respective minimum and maximum values as a single line of two space-separated long integers. For example, arr = [ 1, 3, 5, 7, 9 ]. Our minimum sum is 1 + 3 + 5 + 7 = 16 and our maximum sum is 3 + 5 + 7 + 9 = 24. We would print 16 24 Function Descri..

진행환경 MacBook Pro 13inch 2017 / Mac OSX 10.15.4 문서내에 내용은 미리 코드에 작성한 Docstring을 Sphinx가 reStructuredText로 자동으로 파싱하여 사용하므로 미리 코드에 Docstring을 작성하여야합니다. 1. Sphinx 설치하기 pip install Sphinx 위의 명령어로 설치가 가능합니다. 2. sphinx-quickstart 먼저 sphinx-quickstart를 희망하는 프로젝트로 이동합니다. 저는 잘 정리되어있지는 않지만 이전에 만들었던 공적마스크 재고 알리미를 문서화해보기로 했습니다. sphinx-quickstart 다음 명령어를 사용하여 sphinx-quickstart를 실행합니다. 2-1. root directory 설정하기 ..

추후 블로그를 참고하면서 사용하면 편리할 것 같은 것들을 정리해보았습니다. 먼저 여러개의 숫자를 포함한 리스트를 하나 정의합니다. num_list = [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13] 이 리스트를 활용하여 몇가지 방법에 대해 적어보려합니다. 1. N보다 큰 숫자만 남기기 만약 N이 3이라고 할때 List Comprehension을 사용하지 않았을경우 new_list = [] for num in num_list: if num > 3: new_list.append(num) 평소에는 위와 같이 작성하게 됩니다. 여기서 List Comprehension을 사용하면 더 짧고 간결하게 코드를 작성할 수 있습니다. new_list = [ num for num in num..

1일 1문제 55일차! 오늘의 문제는 백준의 타일 채우기 문제입니다. 2133번: 타일 채우기 문제 3×N 크기의 벽을 2×1, 1×2 크기의 타일로 채우는 경우의 수를 구해보자. 입력 첫째 줄에 N(1 ≤ N ≤ 30)이 주어진다. 출력 첫째 줄에 경우의 수를 출력한다. 예제 입력 1 복사 2 예제 출력 1 복사 3 힌트 아래 그림은 3×12 벽을 타일로 채운 예시이다.... www.acmicpc.net Solution inputNum = int(input()) nc = [0] * (inputNum+1) for i in range(1, inputNum+1): if i % 2 == 1 : nc[i] = 0 elif i == 2 : nc[i] = 3 else : temp = 0 for j in range(..

1. 필요한 라이브러리 설치하기 pip install pymongo pip install pandas pip install tqdm 먼저 필요한 라이브러리를 설치합니다. 2. csv에서 데이터 불러와서 json 형태로 만들기 CSV는 지난 캐치 프로그램 과제를 할때 만들었던 파일을 그대로 활용했습니다. [캐치카페] 현직자와 함께하는 프로그래밍 3회차 과제 도전기 - 1 (API 데이터 자동으로 추가하기) 먼저 영화 데이터를 추가하기위해서 실제 네이버 영화에서 데이터를 크롤링해서 추가해주었습니다. 현재상영작 : 네이버 영화 상영 중 영화의 예매율/평점/좋아요 순 정보 제공. movie.naver.com 크롤링 해와야하.. somjang.tistory.com import pandas as pd from tq..

오늘은 python과 pymongo를 통해 mongoDB에 데이터를 추가하고 추가한 데이터를 출력해보고자 합니다. 1. 실행환경 - OS : Mac OS Catalina - IDE : Pycharm 2. mongoDB 설치하기 먼저 python과 pymongo를 활용하여 DB에 접근하고 데이터를 추가하거나 출력하려면 mongoDB를 설치해주어야 합니다. 설치과정은 아래의 링크에서 확인할 수 있습니다. 2-1. OS X [MAC OSX]MAC에 MongoDB설치하기! 1. 설치파일 다운로드 받기 Download Center: Community Server Download MongoDB Community Server, the most popular non-relational database built to ..