일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 우분투
- 자연어처리
- gs25
- 편스토랑 우승상품
- dacon
- 백준
- ChatGPT
- Kaggle
- hackerrank
- leetcode
- 프로그래머스 파이썬
- 데이콘
- 프로그래머스
- AI 경진대회
- github
- ubuntu
- SW Expert Academy
- 편스토랑
- programmers
- PYTHON
- 파이썬
- 캐치카페
- Baekjoon
- 맥북
- Git
- 코로나19
- Real or Not? NLP with Disaster Tweets
- 더현대서울 맛집
- 금융문자분석경진대회
- Docker
- Today
- Total
목록
반응형
Programming (1169)
솜씨좋은장씨
코딩 1일 1문제! 오늘의 문제는 leetCode의 1859번 문제인 Sorting the Sentence 입니다. Sorting the Sentence - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 👨🏻💻 문제 풀이 공백을 기준으로 여러개 이어붙어있는 단어가 주어지면 각 단어 마지막에 붙어있는 숫자를 보고 다시 단어들을 재 정렬한 다음 이를 다시 문장으로 만들어주는 문제입니다. Input: s = "is2 sentence4 This1 a3" Output:..
코딩 1일 1문제! 오늘의 문제는 leetCode의 2119번 A Number After a Double Reversal 입니다. A Number After a Double Reversal - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 👨🏻💻 코드 ( Solution ) class Solution: def isSameAfterReversals(self, num: int) -> bool: answer = False reverse_num_01 = int(str..
코딩 1일 1문제! 설날인 오늘! 오늘의 문제는 leetCode의 2057번 Smallest Index With Equal Value 입니다. Smallest Index With Equal Value - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 👨🏻💻 문제 풀이 숫자가 담겨져있는 nums 리스트를 입력으로 받으면 nums의 숫자들 중에 ( 인덱스 % 10 == nums 의 해당 인덱스 번째 숫자 ) 를 만족하는 수 들 중 가장 먼저 나오는 숫자의 인덱스를..
코딩 1일 1문제! 오늘의 문제는 leetCode의 Check If String Is a Prefix of Array 입니다. Check If String Is a Prefix of Array - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 👨🏻💻 코드 ( Solution ) class Solution: def isPrefixString(self, s: str, words: List[str]) -> bool: answer = False check_string..
코딩 1일 1문제! 오늘의 문제는 백준의 제곱근 입니다. 13706번: 제곱근 첫째 줄에 양의 정수 N이 주어진다. 정수 N의 제곱근은 항상 정수이며, N의 길이는 800자리를 넘지 않는다. www.acmicpc.net 👨🏻💻 문제 풀이 math의 sqrt로 문제를 풀게되면 런타임 에러 (OverflowError) 가 발생합니다. from math import isqrt 이때 python3.8 버전부터 새로 생긴 isqrt를 대신 사용하면 해결됩니다. 👨🏻💻 코드 ( Solution ) from math import isqrt def jegopgun(N): return isqrt(N) if __name__ == "__main__": N = int(input()) print(jegopgun(N)) Gi..
코딩 1일 1문제! 오늘의 문제는 백준의 초콜릿 자르기 입니다. 2163번: 초콜릿 자르기 정화는 N×M 크기의 초콜릿을 하나 가지고 있다. 초콜릿은 금이 가 있는 모양을 하고 있으며, 그 금에 의해 N×M개의 조각으로 나눠질 수 있다. 초콜릿의 크기가 너무 크다고 생각한 그녀는 초콜릿 www.acmicpc.net 👨🏻💻 문제 풀이 Ncm X Mcm 크기의 초콜릿을 몇 번 잘라야 자른 초콜릿의 크기가 각각 1cm X 1cm 크기가 되는지 구하는 문제입니다. 먼저 Ncm를 N-1 번 잘라서 N 개의 1cm X Mcm 초콜릿으로 만든 다음 각각의 1cm X Mcm 초콜릿을 M-1 번씩 잘라서 1cm X 1cm 크기의 초콜릿으로 만들어 줍니다. 초콜릿 자르는 횟수 공식 = ( N - 1 ) + N X ( M..
서버에 올라가있는 도커 컨테이너 이미지 속 라이브러리를 업데이트를 해야할 때 업데이트를 하는 방법은 1. 업데이트 된 버전으로 다시 설치하고 도커 이미지를 다시 말아서 다시 올리기 2. docker exec -it [컨테이너명] /bin/bash 또는 docker exec -it [컨테이너명] /bin/sh 로 도커 컨테이너에 접속한 뒤 해당 라이브러리만 지웠다가 다시 설치하고 나온 뒤에 docker restart [컨테이너명] 해주기 위와 같이 2가지 방법이 있습니다. 1번의 경우에는 서버를 내렸다가 올려도 변경한 버전이 바뀌지 않고 계속 유지가 되지만 2번의 경우에는 별도의 작업을 진행해주지 않으면 서버가 내려갔다가 올라갔을때 처음에 이미지를 생성할 때 설치했던 버전으로 다시 돌아가서 서버가 내려갔다..
코딩 1일 1문제! 오늘의 문제는 leetCode의 Reverse Prefix of Word 입니다. Reverse Prefix of Word - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 👨🏻💻 코드 ( Solution ) class Solution: def reversePrefix(self, word: str, ch: str) -> str: check_idx = word.find(ch) if check_idx != -1: word = word[:chec..
코딩 1일 1문제! 오늘의 문제는 leetCode의 Sum of Digits of String After Convert 입니다. Sum of Digits of String After Convert - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 👨🏻💻 코드 ( Solution ) class Solution: def getLucky(self, s: str, k: int) -> int: alphabet_list = list(s) convert_str = [] f..
코딩 1일 1문제! 오늘의 문제는 leetCode의 Find First Palindromic String in the Array 입니다. Find First Palindromic String in the Array - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 👨🏻💻 코드 ( Solution ) class Solution: def firstPalindrome(self, words: List[str]) -> str: answer = "" palindrome_..
코딩 1일 1문제! 오늘의 문제는 leetCode의 Sequential Digits 입니다. Sequential Digits - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 👨🏻💻 코드 ( Solution ) class Solution: def sequentialDigits(self, low: int, high: int) -> List[int]: answer = [] num_string = "123456789" min_len, max_len = len(str..
코딩 1일 1문제! 오늘의 문제는 leetCode의 Capitalize the Title 입니다. Capitalize the Title - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 👨🏻💻 코드 ( Solution ) class Solution: def capitalizeTitle(self, title: str) -> str: answer = [] lower_title = title.lower() lower_title_list = lower_title.sp..
코딩 1일 1문제! 오늘의 문제는 leetCode의 Maximum Number of Words Found in Sentences 입니다. Maximum Number of Words Found in Sentences - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 👨🏻💻 코드 ( Solution ) class Solution: def mostWordsFound(self, sentences: List[str]) -> int: length_list = [len(s..
코딩 1일 1문제! 오늘의 문제는 백준의 트ㅏㅊ; 입니다. 4378번: 트ㅏㅊ; 입력은 여러 줄로 이루어진다. 각 줄은 숫자나 공백, 알파벳 대문자, 위의 키보드에 표시되어 있는 문장 부호로 이루어져 있다. Q, A, Z나 `(back-quote), 단어로 이루어진 키(Tab, BackSp, Control 등)는 www.acmicpc.net 👨🏻💻 코드 ( Solution ) def te_ach(error_str): correct_str = "" keyboard_corr_dict = { "1": "`", "2": "1", "3": "2", "4": "3", "5": "4", "6": "5", "7": "6", "8": "7", "9": "8", "0": "9", "-": "0", "=": "-", "w..
코딩 1일 1문제! 600일째! 오늘의 문제는 백준의 약수입니다. 1037번: 약수 첫째 줄에 N의 진짜 약수의 개수가 주어진다. 이 개수는 50보다 작거나 같은 자연수이다. 둘째 줄에는 N의 진짜 약수가 주어진다. 1,000,000보다 작거나 같고, 2보다 크거나 같은 자연수이고, 중복되 www.acmicpc.net 👨🏻💻 문제 풀이 입력으로 해당 수의 모든 약수를 입력 받으므로 입력 받은 약수 중에서 가장 작은수와 가장 큰 수를 곱하면 정답을 구할 수 있습니다. 가장 작은 수와 가장 큰수에는 min과 max를 사용했습니다. 전체 코드는 아래를 참고해주세요. 👨🏻💻 코드 ( Solution ) def divisor_func(divisors): return max(divisors) * min(divi..
👨🏻💻 발생한 에러 오늘 팀원 중에 한 분이 평소와 같이 작업한 api를 Docker Image로 빌드하고자 FROM ubuntu:16.04 ENV HOME /home RUN mkdir -p ${HOME} WORKDIR ${HOME} ## set OS RUN apt update RUN apt-get install -y software-properties-common RUN add-apt-repository ppa:deadsnakes/ppa RUN apt update RUN apt install -y python3.7 python3.7-dev ## install app dependency RUN apt update ARG DEBIAN_FRONTEND=noninteractive RUN apt install..
코딩 1일 1문제! 오늘의 문제는 백준의 세 수 입니다. 2985번: 세 수 첫째 줄에 정인이가 원래 적어준 등식을 출력한다. 입력으로 주어진 숫자의 순서는 유지해야 하고, 등호 하나와 더하기, 빼기, 곱하기, 나누기 기호 중 하나로 이루어져 있어야 한다. 만약 등식 www.acmicpc.net 👨🏻💻 코드 ( Solution ) def three_numbers(numbers): answer = "" if numbers[0] + numbers[1] == numbers[2]: answer = f"{numbers[0]}+{numbers[1]}={numbers[2]}" elif numbers[0] - numbers[1] == numbers[2]: answer = f"{numbers[0]}-{numbers[1..
코딩 1일 1문제! 오늘의 문제는 프로그래머스의 2022년 카카오 블라인드 채용 코딩테스트 문제였던 주차 요금 계산 입니다. 코딩테스트 연습 - 주차 요금 계산 [180, 5000, 10, 600] ["05:34 5961 IN", "06:00 0000 IN", "06:34 0000 OUT", "07:59 5961 OUT", "07:59 0148 IN", "18:59 0000 IN", "19:09 0148 OUT", "22:59 5961 IN", "23:00 5961 OUT"] [14600, 34400, 5000] programmers.co.kr 👨🏻💻 문제 풀이 어느 주차장의 입차, 출차 정보와 주차장의 요금표 정보를 입력 받으면 주차장을 이용한 차량들의 주차요금을 계산하는 문제입니다. 입차 출차 시간..
개발을 하다 보면 종종 특정 시간과 특정 시간 사이에 얼마나 많은 시간이 흘렀는지 구해야 할 경우가 있습니다. 직접 시간을 계산하는 코드를 작성해도 되지만 2시 39분 -> 5시 25분 까지 얼마나 걸렸어? 라고 계산을 한다고 했을때 1시간은 60초라는 것을 감안하면서 계산하기가 귀찮기도 합니다. 이를 조금 더 쉽게 계산하는 방법이 없을까! 하다가 찾은것이 바로 datetime의 strptime 을 활용하는 방법입니다. 👨🏻💻 datetime 의 strptime strptime은 문자열로 되어있는 날짜 또는 시간을 datetime 객체로 바꾸어주는 함수입니다. 😎 사용 예시 * from datetime import datetime 으로 datetime을 import 한 뒤에 사용 문자열 strptime..
코딩 1일 1문제! 오늘의 문제는 2022 KAKAO BLIND RECRUITMENT 문제 중 1개인 신고 결과 받기! 입니다. 풀기는 풀었으나 신고 건수가 많아지면 효율이 떨어지는 코드여서 추후에 수정하고자 합니다. 코딩테스트 연습 - 신고 결과 받기 문제 설명 신입사원 무지는 게시판 불량 이용자를 신고하고 처리 결과를 메일로 발송하는 시스템을 개발하려 합니다. 무지가 개발하려는 시스템은 다음과 같습니다. 각 유저는 한 번에 한 명의 programmers.co.kr 👨🏻💻 문제 풀이 k번 이상 신고 받은 불량 이용자는 이용 정지가 되며 이용 정지가 되었을 때는 해당 불량 이용자를 신고한 모든 유저에게 불량 이용자 처리결과에 대한 이메일이 전송된다고 할 때 각 유저가 받은 이메일의 개수를 구하는 문제입..
코딩 1일 1문제! 오늘의 문제는 백준의 피시방 알바 입니다. 1453번: 피시방 알바 첫째 줄에 손님의 수 N이 주어진다. N은 100보다 작거나 같다. 둘째 줄에 손님이 들어오는 순서대로 각 손님이 앉고 싶어하는 자리가 입력으로 주어진다. www.acmicpc.net 👨🏻💻 문제 풀이 피시방에 들어오는 손님들이 차례로 원하는 좌석 번호를 이야기하는데 이미 사용 중인 좌석 번호를 말 할 경우 거절하게 됩니다. 이미 사용 중인 좌석의 번호는 중복된 숫자이므로 중복된 숫자의 개수만 구하면 됩니다. N = input() customer = input() 손님의 수와 손님이 말한 좌석 번호를 입력 받습니다. customer = customer.split() 좌석 번호는 공백을 기준으로 나열되어있으므로 공백을..
개발을 하다보면 Docker Container 내부로 들어가서 내용을 확인해보아야 할 경우가 있습니다. $ docker exec -it [컨테이너명] /bin/bash 보통 위의 명령어를 활용하여 컨테이너 내부에 접속하곤하는데 OCI runtime exec failed: exec failed: container_linux.go:348: starting container process caused "exec: \"/bin/bash\": stat /bin/bash: no such file or directory": unknown 종종 위와 같은 에러가 발생하며 접속이 불가한 경우가 있습니다. 👨🏻💻 원인 이런 경우는 Docker 이미지가 Alpine 이미지일 경우 그럴 수 있습니다. 👨🏻💻 해결 방법 해..
$ python3 setup.py bdist_wheel 위의 명령어를 통해 파이썬 패키지를 whl 파일로 만들고자 하는데 (sample_env) (base) somjang:sample donghyunjang$ python3 setup.py bdist_wheel usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...] or: setup.py --help [cmd1 cmd2 ...] or: setup.py --help-commands or: setup.py cmd --help error: invalid command 'bdist_wheel' 위와 같은 에러가 발생했습니다. 👨🏻💻 원인 이는 내 환경에 wheel 이 설치가 되어있지 않아 발..
코딩 1일 1문제! 오늘의 문제는 백준의 1998년생인 내가 태국에서는 2541년생?! 입니다. 18108번: 1998년생인 내가 태국에서는 2541년생?! ICPC Bangkok Regional에 참가하기 위해 수완나품 국제공항에 막 도착한 팀 레드시프트 일행은 눈을 믿을 수 없었다. 공항의 대형 스크린에 올해가 2562년이라고 적혀 있던 것이었다. 불교 국가인 태국 www.acmicpc.net 👨🏻💻 문제 풀이 태국의 불기년도는 우리나라에서 쓰는 년도에서 543년을 더한 값을 활용합니다. 1998년생인 내가 태국에서는 2541년생?! 문제는 불기년도를 입력 받으면 우리나라의 년도를 출력하는 문제입니다. year = int(input()) 먼저 불기년도를 입력받은 후에 year - 543 543 을 ..
👨🏻💻 네이버 뉴스 기사 수집을 부탁해! 마케팅 / 홍보 대행 회사에서 인턴을 하는 친구가 업무를 받았는데 특정 기업에 대한 O월 O일 ~ O월 O일 까지의 네이버 뉴스 기사를 수집하고 각각의 기사가 기획 기사인지, 부정 기사인지 분류를 해야하는데 수집해야 할 뉴스기사가 너무 많다며 혹시 프로그래밍으로 수집 할 수 있는 방법이 있는지! 물어보았습니다. 🤩 기사 수집이라면 당근! 크롤링이라면 또 제 전문 분야 이기에 시간이 될 때 도와 주기로 하였고 간단하게 기사 제목, 기사의 url, 언론사, 기사가 올라온 날짜 이렇게 4가지를 크롤링하는 코드를 작성하여 12월 1달 간의 기사를 크롤링해서 전달해 주었습니다. 이번 글에서는 그때 작성했던 코드에서 조금 개선하여 공유해보려 합니다. 요구사항 특정 회사를 ..
코딩 1일 1문제! 오늘의 문제는 백준의 달팽이는 올라가고 싶다 입니다. 2869번: 달팽이는 올라가고 싶다 첫째 줄에 세 정수 A, B, V가 공백으로 구분되어서 주어진다. (1 ≤ B < A ≤ V ≤ 1,000,000,000) www.acmicpc.net 👨🏻💻 코드 ( Solution ) def snail_wants_to_climb(A, B, V): snail_days = (V-B) / (A-B) if snail_days != int(snail_days): snail_days += 1 return int(snail_days) if __name__ == "__main__": A, B, V = map(int, input().split()) print(snail_wants_to_climb(A, B, ..
코딩 1일 1문제! 오늘의 문제는 백준의 3460번 이진수 입니다. 3460번: 이진수 양의 정수 n이 주어졌을 때, 이를 이진수로 나타냈을 때 1의 위치를 모두 찾는 프로그램을 작성하시오. 최하위 비트(least significant bit, lsb)의 위치는 0이다. www.acmicpc.net 👨🏻💻 문제 풀이 10진수를 입력받으면 이를 이진수로 바꾼 뒤에 이진수 속에 있는 1의 위치출력하는 문제입니다. 먼저 예제 입력과 예제 출력을 확인해보면 13을 입력했을때 0 2 3 이라는 값이 나오는 것을 볼 수 있습니다. 13 을 이진수로 바꾸어보면 1011이 됩니다. 오른쪽 부터 1이 나오는 위치를 파악하고 첫 시작점의 위치를 0이라고 하면 13을 바꾼 이진수 1 0 1 1 순서 3 2 1 0 0 2 ..
코딩 1일 1문제! 오늘의 문제는 백준의 더하기 입니다. 9085번: 더하기 입력의 첫 줄에는 테스트 케이스의 개수 T(1 ≤ T ≤ 10)가 주어진다. 각 테스트 케이스는 첫 줄에 자연수의 개수 N(1 ≤ N ≤ 100)이 주어지고, 그 다음 줄에는 N개의 자연수가 주어진다. 각각의 자연 www.acmicpc.net 👨🏻💻 코드 ( Solution ) def plus_9085(numbers): numbers = list(map(int, numbers.split())) return sum(numbers) if __name__ == "__main__": for _ in range(int(input())): N = int(input()) numbers = input() print(plus_9085(numb..
코딩 1일 1문제! 오늘의 문제는 백준의 주사위 세개 입니다. 2480번: 주사위 세개 1에서부터 6까지의 눈을 가진 3개의 주사위를 던져서 다음과 같은 규칙에 따라 상금을 받는 게임이 있다. 같은 눈이 3개가 나오면 10,000원+(같은 눈)×1,000원의 상금을 받게 된다. 같은 눈이 2개 www.acmicpc.net 👨🏻💻 문제 풀이 1 ~ 6 사이의 눈을 가진 3개의 주사위를 던져서 다음과 같은 규칙에 따라 상금을 받는 게임이 있다. 같은 눈이 3개가 나오면 10,000원+(같은 눈)×1,000원의 상금을 받게 된다. 같은 눈이 2개만 나오는 경우에는 1,000원+(같은 눈)×100원의 상금을 받게 된다. 모두 다른 눈이 나오는 경우에는 (그 중 가장 큰 눈)×100원의 상금을 받게 된다. 3개..
코딩 1일 1문제! 오늘의 문제는 백준의 시험 점수 입니다. 5596번: 시험 점수 대한고등학교에 재학 중인 민국이와 만세는 4과목(정보, 수학, 과학, 영어)에 대한 시험을 봤다. 민국이와 만세가 본 4과목의 점수를 입력하면, 민국이의 총점 S와 만세의 총점 T 중에서 큰 점수 www.acmicpc.net 👨🏻💻 문제 풀이 공백을 기준으로 나열된 민국이와 만세의 정보, 수학, 과학, 영어 점수를 입력받으면 민국이와 만세의 점수 각각의 총합 중 큰 점수를 출력하는 문제입니다. mingook = input() manse = input() 민국이와 만세의 점수는 input()으로 입력 받은 뒤에 mingook = list(map(int, mingook.split())) manse = list(map(int..