일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- Real or Not? NLP with Disaster Tweets
- hackerrank
- 코로나19
- 맥북
- 편스토랑 우승상품
- github
- AI 경진대회
- PYTHON
- 편스토랑
- Baekjoon
- 파이썬
- 백준
- ChatGPT
- dacon
- SW Expert Academy
- gs25
- 캐치카페
- 금융문자분석경진대회
- Kaggle
- Docker
- programmers
- 우분투
- 프로그래머스 파이썬
- 더현대서울 맛집
- leetcode
- 프로그래머스
- 데이콘
- Git
- 자연어처리
- ubuntu
- Today
- Total
목록
반응형
분류 전체보기 (1651)
솜씨좋은장씨
Consider a staircase of size : n = 4 # ## ### #### Observe that its base and height are both equal to n, and the image is drawn using # symbols and spaces. The last line is not preceded by any spaces. Write a program that prints a staircase of size n. Function Description Complete the staircase function in the editor below. It should print a staircase as described above. staircase has the follow..
진행환경 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..
2020년 1월 1일, Python2.7 버전의 공식 지원이 종료되었습니다. 공식지원이 종료가 되어도 Python 2 버전으로 작성된 코드가 실행이되지 않거나 하지는 않지만 추후 Python2에서 보안에 대한 문제가 생기거나 할 시 추가적으로 그부분에 대해 추가적으로 업데이트를 지원받기 어려운 부분도 있을 수도 있고 코딩을하면서 라이브러리를 사용하려고 할 때 Python2 를 지원하지 않아 사용할 수 없을 수도 있습니다. 이에 Python3를 설치하면 Python2로 작성된 코드를 Python3로 바꾸어주는 기본 라이브러리를 제공하고 있습니다. 그것이 바로 2to3입니다. 2to3 - 파이썬 2에서 파이썬 3으로 자동 코드 변환 — Python 3.8.2 문서 2to3 - 파이썬 2에서 파이썬 3으로 자..
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(..
애플의 새로운 커서가 생긴 iPad OS 13.4 버전으로 아이패드의 소프트웨어를 업데이트 하고 오랜만에 블루투스 마우스와 블루투스키보드를 연결하여 사용하려고 보니 위의 사진처럼 "안녕하세요" 를 입력했을때 'ㅏ', 'ㅕ'의 모음이 입력되지 않는 문제가 있었습니다. 이에 아이폰과 맥북에 연결하여 테스트 해보니 정상적으로 입력이 되는 것을 확인되어 블루투스 키보드에는 문제가 없다는 것을 확인할 수 있었습니다. 구글에 검색해보니 이는 손쉬운 사용의 AssistiveTouch 항목에서 마우스 키가 활성화 되어있어 발생하는 문제였습니다. 해결방법은 다음과 같습니다. 해결방법 먼저 설정창으로 진입한 후 왼쪽 배너를 아래로 쓸어내리면 설정 항목을 검색할 수 있는 검색창이 나옵니다. 그 다음 그 검색창에 Assist..
1일 1문제 54일차! 오늘의 문제는 백준의 30입니다. 10610번: 30 문제 어느 날, 미르코는 우연히 길거리에서 양수 N을 보았다. 미르코는 30이란 수를 존경하기 때문에, 그는 길거리에서 찾은 수에 포함된 숫자들을 섞어 30의 배수가 되는 가장 큰 수를 만들고 싶어한다. 미르코를 도와 그가 만들고 싶어하는 수를 계산하는 프로그램을 작성하라. 입력 N을 입력받는다. N는 최대 105개의 숫자로 구성되어 있으며, 0으로 시작하지 않는다. 출력 미르코가 만들고 싶어하는 수가 존재한다면 그 수를 출력하라. 그 수가 존재하지 않는 www.acmicpc.net Solution 1 N = input() N = list(N) answer = -1 max_num = sorted(N, reverse=True) m..
1일 1문제 53일차! 오늘의 문제는 동전 0 입니다. 11047번: 동전 0 첫째 줄에 N과 K가 주어진다. (1 ≤ N ≤ 10, 1 ≤ K ≤ 100,000,000) 둘째 줄부터 N개의 줄에 동전의 가치 Ai가 오름차순으로 주어진다. (1 ≤ Ai ≤ 1,000,000, A1 = 1, i ≥ 2인 경우에 Ai는 Ai-1의 배수) www.acmicpc.net 첫번째 시도 N, K = map(int, input().split()) coins = [] for i in range(N): coin = int(input()) coins.append(coin) index = N - 1 count = 0 while K != 0: if coins[index] K: index = index - 1 print(coun..
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 ..
1일 1문제 52일차! 오늘의 문제는 서로 다른 부분 문자열의 개수 입니다. 11478번: 서로 다른 부분 문자열의 개수 첫째 줄에 문자열 S가 주어진다. S는 알파벳 소문자로만 이루어져 있고, 길이는 1,000 이하이다. www.acmicpc.net Solution 1 string = str(input()) strings = [] for i in range(len(string)): for j in range(len(string) - i): strings.append(string[j:j+i+1]) print(len(set(strings))) SOMJANG/CODINGTEST_PRACTICE 1일 1문제 since 2020.02.07. Contribute to SOMJANG/CODINGTEST_PRACTI..
1일 1문제 51일차! 오늘의 문제는 백준의 KMP는 왜 KMP일까? 입니다. 2902번: KMP는 왜 KMP일까? 문제 KMP 알고리즘이 KMP인 이유는 이를 만든 사람의 성이 Knuth, Morris, Prett이기 때문이다. 이렇게 알고리즘에는 발견한 사람의 성을 따서 이름을 붙이는 경우가 많다. 또 다른 예로, 유명한 비대칭 암호화 알고리즘 RSA는 이를 만든 사람의 이름이 Rivest, Shamir, Adleman이다. 사람들은 이렇게 사람 성이 들어간 알고리즘을 두 가지 형태로 부른다. 첫 번째는 성을 모두 쓰고, 이를 하이픈(-)으로 이어 붙인 것이다. 예 www.acmicpc.net Solution input_string = str(input()) split_string = input_st..
오늘은 지난 면접에서 질문으로 받아 짧게 코드를 구현해보았던Python에서 두개의 문자열을 서로 바꾸는 방법에대해서 한번 적어보려고 합니다. 면접때는 C언어 Java시절 많이 하던 방식인 swap 함수를 직접 만들어 면접을 보았습니다. 면접 시 코드def changeString(string_1, string_2): temp_string = string_1 string_1 = string_2 string_2 = temp_string return string_1, string_2string_1 = "string_1" string_2 = "string_2" print("Before Switch Data") print("string_1 : {}".format(string_1)) print("string_2 : ..
Given a string, you need to reverse the order of characters in each word within a sentence while still preserving whitespace and initial word order. Example 1: Input: "Let's take LeetCode contest" Output: "s'teL ekat edoCteeL tsetnoc" Note: In the string, each word is separated by single space and there will not be any extra space in the string. Solution 1 class Solution: def reverseWords(self, ..
You are given a string containing characters A and B only. Your task is to change it into a string such that there are no matching adjacent characters. To do this, you are allowed to delete zero or more characters in the string. Your task is to find the minimum number of required deletions. For example, given the string s = AABAAB, remove an A at positions 0 and 3 to make s = ABAB in 2 deletions..
Mark and Jane are very happy after having their first child. Their son loves toys, so Mark wants to buy some. There are a number of different toys lying in front of him, tagged with their prices. Mark has only a certain amount to spend, and he wants to maximize the number of toys he buys with this money. Given a list of prices and an amount to spend, what is the maximum number of toys Mark can b..
Every email consists of a local name and a domain name, separated by the @ sign. For example, in alice@leetcode.com, alice is the local name, and leetcode.com is the domain name. Besides lowercase letters, these emails may contain '.'s or '+'s. If you add periods ('.') between some characters in the local name part of an email address, mail sent there will be forwarded to the same address withou..
Jigsaw Multilingual Toxic Comment Classification Use TPUs to identify toxicity comments across multiple languages www.kaggle.com Kaggle에서 새로운 대회가 오픈하였습니다. Jigsaw Multilingual Toxic Comment Classification 대회입니다. 여러 커뮤니티를 보니 그동안 여러번 오픈했던 대회인데 이번 대회의 특이한 점은 다국어를 지원하는 모델을 만드는 것과 TPU활용을 장려하는 점이 특이한 점인 것 같습니다. 학습으로 사용하는 데이터는 영어이고 그 데이터로 학습한 모델로 맞춰야할 테스트 데이터는 포르투갈어, 러시아어, 터키어, 스페인어 등 이라고 합니다. 그동안 재난문자트..
1일 1문제 46일차! 오늘의 문제는 쉬운 계단수입니다. 10844번: 쉬운 계단 수 첫째 줄에 정답을 1,000,000,000으로 나눈 나머지를 출력한다. www.acmicpc.net Solution inputNum = int(input()) nc = [[0]*10 for _ in range(inputNum+1)] ans, mod = 0, 1000000000 for i in range(1, 10): nc[1][i] = 1 for i in range(2, inputNum+1): for j in range(0, 10): if j > 0: nc[i][j] += nc[i-1][j-1] if j < 9: nc[i][j] += nc[i-1][j+1] nc[i][j] %= mod # print(nc) print(s..
캐글 노트북에서 필요한 라이브러리를 설치하기위해 평소에 주피터 노트북이나 구글 코랩에서 했던 방법대로 하게되면 다음과 같은 출력과 함께 종료되지 않는 것을 볼 수 있습니다. !pip install keras_bert WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError(': Failed to establish a new connection: [Errno -3] Temporary failure in name resolution',)': /simple/keras-bert/ WARNING: Retrying (Retry(tot..
Kaggle 도전 24회차! 이제 정말 대회 종료까지 얼마 남지 않았습니다. 지난 23일동안 정말 다양한 데이터 전처리 방법과 LSTM, Bi-LSTM, CNN, CNN-LSTM, RNN, GRU, BERT등 정말 다양한 모델을 사용하여 결과를 도출하여 보았을때 BERT로 도출한 결과가 가장 좋았습니다. 남은 2일은 BERT를 활용하여 결과를 내고 최종 제출 파일을 선택하기로 하였습니다. 그리고 1.0000의 Public Score를 갖고 있는 사람들중에 일부는 test 데이터의 정답 라벨을 다운로드 받아 그 데이터를 제출한 것을 알게되었고 정말 많이 실망하게 되었습니다. 이것을 알고 검색해보던 중 지난 다른 대회에서도 이런 cheating이 있었고 상금까지 받아가 기사에 났던 적이 있는 것도 알게되었고..
Kaggle 도전 23회차! 오늘은 DACON에서 주최했던 지난 KB 금융문자분석 경진대회에서 1위를 한 스팸구이 팀의 방법을 벤치마킹하여 도전해보았습니다. hotorch/Dacon_14th_Competition_code Dacon 14th Competition 1st Place- "Financial smishing character analysis" - hotorch/Dacon_14th_Competition_code github.com TF-IDF 에서 TF에 1+log(TF) 한 방식을 사용하였고 lightGBM모델에 GridSearchCV를 통한 최적화를 실시하였습니다. 데이터 전처리방식은 다음과 같습니다. he's -> he is / fromåÊwounds -> from wounds 와 같이 바꾸..
Harold is a kidnapper who wrote a ransom note, but now he is worried it will be traced back to him through his handwriting. He found a magazine and wants to know if he can cut out whole words from it and use them to create an untraceable replica of his ransom note. The words in his note are case-sensitive and he must use only whole words available in the magazine. He cannot use substrings or con..
코딩 1일 1문제 42일차! SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 이 문제는 주어진 문자열을 가지고 앞과 뒤에서 하나씩 알파벳을 뽑아서 문자열을 만드는데 사전순으로 가장 빠른 문자열을 만드는 것이 목표인 문제입니다. 11회차만에.... 장장 12시간에 걸친 고민 끝에 풀었습니다. 처음부터 하나하나 손으로 적어가면서 풀어볼껄 하는 후회가 드는 문제였습니다. Solution input_num = int(input()) for i in range(input_num): input_text = str(input()) text = list(input_text) answer = [] front = 0 end = ..
데이콘 온도추정 경진대회 도전 7, 8회차입니다. [공공] AI프렌즈 시즌1 온도 추정 경진대회 출처 : DACON - Data Science Competition dacon.io 첫번째 시도 오늘은 LightGBM모델의 하이퍼 파라미터를 늘려서 시도해보았습니다. Y18 데이터는 비어있는 구간은 Y06, Y09, Y12, Y16, Y17을 평균 낸 값을 넣어주어 비어있지않은 구간의 데이터와 함께 사용했습니다. data_for_graph = train.loc[:, ['Y06', 'Y09', 'Y12', 'Y16', 'Y17']].dropna() plt.figure(figsize=(20, 10)) plt.plot(data_for_graph) import numpy as np new_Y_18 = [] for ..
Kaggle 도전 22회차! 오늘은 아르바이트를 다녀온 후 시간이 빠듯하여 그동안 제출했던 모델중에 가장 결과가 좋았던 모델들에 바뀐 데이터 전처리방식을 적용한 데이터를 활용하여 학습하고 결과를 도출해보았습니다. 데이터 전처리방식은 21회차와 동일합니다. from keras.preprocessing.text import Tokenizer max_words = 12396 tokenizer = Tokenizer(num_words = max_words) tokenizer.fit_on_texts(X_train) X_train_vec = tokenizer.texts_to_sequences(X_train) X_test_vec = tokenizer.texts_to_sequences(X_test) import matp..
A bracket is considered to be any one of the following characters: (, ), {, }, [, or ]. Two brackets are considered to be a matched pair if the an opening bracket (i.e., (, [, or {) occurs to the left of a closing bracket (i.e., ), ], or }) of the exact same type. There are three types of matched pairs of brackets: [], {}, and (). A matching pair of brackets is not balanced if the set of bracket..
1일 1문제 42일차! 오늘의 문제는 백준의 2xn타일링입니다. 11726번: 2×n 타일링 2×n 크기의 직사각형을 1×2, 2×1 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오. 아래 그림은 2×5 크기의 직사각형을 채운 한 가지 방법의 예이다. www.acmicpc.net Solution n = int(input()) def answer(n): if n == 1: fiboNum = 1 elif n == 2: fiboNum = 2 elif n >= 3: fibo = [0] * (n) fibo[0] = 1 fibo[1] = 2 for i in range(2, n): fibo[i] = fibo[i-1] + fibo[i-2] fiboNum = fibo[n-1] % 10007 return fiboN..
Kaggle 도전 20회차! 이제 정말 종료까지 얼마 남지 않았았습니다. 오늘은 먼저 19회차의 방법으로 전처리를 한후에 TF-IDF로 임베딩을하고 lightGBM 모델을 사용하여 결과를 내보았습니다. import re clear_text_list = list(train['clear_text']) X_train = [] for clear_text in clear_text_list: word_list = word_tokenize(clear_text) word_list = [word for word in word_list if len(word) > 2] word_list = [word for word in word_list if word not in stop_words] # word_list = [stemm..
데이콘 온도추정 경진대회 도전 5, 6회차입니다. [공공] AI프렌즈 시즌1 온도 추정 경진대회 출처 : DACON - Data Science Competition dacon.io 첫번째 시도 Y18의 앞쪽 30분간의 없는 데이터를 Y06, Y09, Y12, Y16, Y17 의 평균으로 채워넣고 기상청 데이터는 X00, X07, X28, X31, X32 기온데이터, X11, X34 일일 누적 일사량 데이터를 사용하였습니다. data_for_graph = train.loc[:, ['Y06', 'Y09', 'Y12', 'Y16', 'Y17']].dropna() plt.figure(figsize=(20, 10)) plt.plot(data_for_graph) import numpy as np new_Y_18 =..