일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Baekjoon
- Git
- AI 경진대회
- PYTHON
- gs25
- 편스토랑
- 데이콘
- Docker
- 더현대서울 맛집
- 맥북
- 편스토랑 우승상품
- 우분투
- hackerrank
- SW Expert Academy
- Real or Not? NLP with Disaster Tweets
- 파이썬
- 금융문자분석경진대회
- leetcode
- 캐치카페
- 프로그래머스 파이썬
- dacon
- github
- 백준
- 프로그래머스
- 코로나19
- ubuntu
- 자연어처리
- Kaggle
- programmers
- ChatGPT
- Today
- Total
목록
반응형
파이썬 (223)
솜씨좋은장씨
코딩 1일 1문제! 오늘의 문제는 백준의 빠른 A+B입니다. 15552번: 빠른 A+B 첫 줄에 테스트케이스의 개수 T가 주어진다. T는 최대 1,000,000이다. 다음 T줄에는 각각 두 정수 A와 B가 주어진다. A와 B는 1 이상, 1,000 이하이다. www.acmicpc.net Solution import sys n = int(sys.stdin.readline()) for i in range(n): num1, num2 = map(int, sys.stdin.readline().split()) print(num1+num2) Solution 풀이 이 문제는 입력하는 부분에 input 대신에 sys.stdin.readline()을 활용할 수 있는지 여부를 확인하는 문제 같았습니다. 백준에서 문제를 풀다..
코딩 1일 1문제! 오늘의 문제는 백준의 소수입니다. 2581번: 소수 M이상 N이하의 자연수 중 소수인 것을 모두 찾아 첫째 줄에 그 합을, 둘째 줄에 그 중 최솟값을 출력한다. 단, M이상 N이하의 자연수 중 소수가 없을 경우는 첫째 줄에 -1을 출력한다. www.acmicpc.net Solution def get_primary_num_eratos(N): nums = [True] * (N) for i in range(2, len(nums) // 2 + 1): if nums[i] == True: for j in range(i+i, N, i): nums[j] = False return [i for i in range(2, N) if nums[i] == True] def solution(A, B): pri..
코딩 1일 1문제 오늘의 문제는 백준의 단어 공부 입니다. 1157번: 단어 공부 알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다. www.acmicpc.net Solution from collections import Counter inputStr = list(input().lower()) cnt = Counter(inputStr) cnt_items = cnt.items() cnt_nums = [num[1] for num in cnt_items] max_num = max(cnt_nums) if cnt_nums.count(max_num) != 1: print("?") else: most_comm..
코딩 1일 1문제! 오늘의 문제는 백준의 X보다 작은 수 입니다. 10871번: X보다 작은 수 첫째 줄에 N과 X가 주어진다. (1 ≤ N, X ≤ 10,000) 둘째 줄에 수열 A를 이루는 정수 N개가 주어진다. 주어지는 정수는 모두 1보다 크거나 같고, 10,000보다 작거나 같은 정수이다. www.acmicpc.net Solution inputNums = list(map(int, input().split())) numList = list(map(int, input().split())) answer = [num for num in numList if num < inputNums[1]] print(" ".join(list(map(str, answer)))) Solution 풀이 먼저 두 수를 입력 받..
코딩 1일 1문제 오늘의 문제는 프로그래머스의 음양 더하기 입니다. 코딩테스트 연습 - 음양 더하기 어떤 정수들이 있습니다. 이 정수들의 절댓값을 차례대로 담은 정수 배열 absolutes와 이 정수들의 부호를 차례대로 담은 불리언 배열 signs가 매개변수로 주어집니다. 실제 정수들의 합을 구하여 re programmers.co.kr Solution def solution(absolutes, signs): answer = 0 for i in range(len(absolutes)): minus = 1 if not signs[i]: minus = -1 answer += minus * absolutes[i] return answer Solution 풀이 signs의 i번째 수가 False 일 경우 absol..
코딩 1일 1문제! 오늘의 문제는 프로그래머스의 2016년 입니다. 코딩테스트 연습 - 2016년 2016년 1월 1일은 금요일입니다. 2016년 a월 b일은 무슨 요일일까요? 두 수 a ,b를 입력받아 2016년 a월 b일이 무슨 요일인지 리턴하는 함수, solution을 완성하세요. 요일의 이름은 일요일부터 토요일까 programmers.co.kr Solution import datetime def solution(a, b): answer = '' weekday_list = ["MON", "TUE", "WED", "THU", "FRI", "SAT", "SUN"] weekday_info = datetime.datetime(2016, a, b).weekday() answer = weekday_list[w..
코딩 1일 1문제 오늘의 문제는 프로그래머스 서울에서 김서방 찾기 입니다. 코딩테스트 연습 - 서울에서 김서방 찾기 String형 배열 seoul의 element중 "Kim"의 위치 x를 찾아, "김서방은 x에 있다"는 String을 반환하는 함수, solution을 완성하세요. seoul에 "Kim"은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니 programmers.co.kr Solution def solution(seoul): return "김서방은 {}에 있다".format(seoul.index("Kim")) SOMJANG/CODINGTEST_PRACTICE 1일 1문제 since 2020.02.07. Contribute to SOMJANG/CODINGTEST_PRACTICE dev..
코딩 1일 1문제! 오늘의 문제는 문자열 내림차순으로 배치하기 입니다. 코딩테스트 연습 - 문자열 내림차순으로 배치하기 문자열 s에 나타나는 문자를 큰것부터 작은 순으로 정렬해 새로운 문자열을 리턴하는 함수, solution을 완성해주세요. s는 영문 대소문자로만 구성되어 있으며, 대문자는 소문자보다 작은 것으로 programmers.co.kr Solution def solution(s): answer = '' lowercases = [] uppercases = [] for char in list(s): if char.isupper(): uppercases.append(char) else: lowercases.append(char) if len(uppercases) != 0: uppercases = so..
requests 라이브러리를 활용해서 개발을 하던 중 > ImportError: cannot import name DependencyWarning 위와 같은 오류가 나면서 제대로 실행이 되지 않는 문제가 있었습니다. 이때 $ pip install --upgrade requests 위와 같이 한번 실행해주고 다시 실행해보면 오류가 발생하지 않는 것을 볼 수 있습니다. 이와 관련하여 부족한 점이 있다면 언제든 댓글 부탁드립니다. 감사합니다.
코딩 1일 1문제! 오늘의 문제는 프로그래머스의 정수 내림차순으로 배치하기 입니다. 코딩테스트 연습 - 정수 내림차순으로 배치하기 함수 solution은 정수 n을 매개변수로 입력받습니다. n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요. 예를들어 n이 118372면 873211을 리턴하면 됩니다. 제한 조건 n은 1이 programmers.co.kr Solution def solution(n): answer = 0 nNumList = sorted(list(str(n)), reverse=True) answer = int("".join(nNumList)) return answer SOMJANG/CODINGTEST_PRACTICE 1일 1문제 since 2020.02.07. Cont..
코딩 1일 1문제! 오늘의 문제는 프로그래머스의 자릿수 더하기 입니다. 코딩테스트 연습 - 자릿수 더하기 자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요. 예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다. 제한사항 N의 범위 : 100,000,000 이하의 자연수 입출 programmers.co.kr Solution def solution(n): answer = 0 answer = sum(list(map(int, list(str(n))))) return answer SOMJANG/CODINGTEST_PRACTICE 1일 1문제 since 2020.02.07. Contribute to SOMJANG/CODINGTES..
코딩 1일 1문제 오늘의 문제는 프로그래머스의 정수 제곱근 판별 입니다. 코딩테스트 연습 - 정수 제곱근 판별 임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다. n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 양의 정수 x의 제곱이 아니라면 -1을 리턴하는 함 programmers.co.kr Solution def solution(n): answer = -1 num = pow(n, 0.5) if num == int(num): answer = pow((num+1), 2) return answer SOMJANG/CODINGTEST_PRACTICE 1일 1문제 since 2020.02.07. Contribute to SOMJANG/CODINGTEST_P..
코딩 1일 1문제! 오늘의 문제는 프로그래머스의 자연수 뒤집어 배열로 만들기 입니다. 코딩테스트 연습 - 자연수 뒤집어 배열로 만들기 자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다. 제한 조건 n은 10,000,000,000이하인 자연수입니다. 입출력 예 n return 12345 programmers.co.kr Solution def solution(n): answer = [] reverseStrN = str(n)[::-1] answer = list(map(int, list(reverseStrN))) return answer SOMJANG/CODINGTEST_PRACTICE 1일 1문제 since 2020.02..
코딩 1일 1문제! 오늘의 문제는 제일 작은 수 제거하기 입니다. 코딩테스트 연습 - 제일 작은 수 제거하기 정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요. 예를들어 arr이 [4,3,2,1 programmers.co.kr Solution def solution(arr): answer = [] if len(arr) == 1: answer = [-1] else: minNum = min(arr) answer = [num for num in arr if num != minNum] return answer SOMJANG/CODINGTEST_PRACTICE 1일 1문제 sinc..
코딩 1일 1문제! 오늘의 문제는 x만큼 간격이 있는 n개의 숫자 입니다. 코딩테스트 연습 - x만큼 간격이 있는 n개의 숫자 함수 solution은 정수 x와 자연수 n을 입력 받아, x부터 시작해 x씩 증가하는 숫자를 n개 지니는 리스트를 리턴해야 합니다. 다음 제한 조건을 보고, 조건을 만족하는 함수, solution을 완성해주세요. programmers.co.kr 첫번째 시도 def solution(x, n): minus = 1 if x < 0: minus = -1 answer = [x * minus for x in range(x * minus, x * minus * n + 1, x * minus)] return answer 위와 같이 range 안에서 처리를 하려고 했더니 x가 0일때 range..
코딩 1일 1문제! 오늘의 문제는 프로그래머스의 약수의 합입니다. 코딩테스트 연습 - 약수의 합 정수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수, solution을 완성해주세요. 제한 사항 n은 0 이상 3000이하인 정수입니다. 입출력 예 n return 12 28 5 6 입출력 예 설명 입출력 예 #1 12의 약수 programmers.co.kr Solution def solution(n): answer = 0 yaksu_list = [] if n == 1: answer = 1 else: for i in range(1, n//2): if n % i == 0 and i not in yaksu_list: yaksu_list.append(i) if n // i != i: yaksu_list...
코딩 1일 1문제 2번째 문제는! 백준의 문자열 반복입니다. 2675번: 문자열 반복 문자열 S를 입력받은 후에, 각 문자를 R번 반복해 새 문자열 P를 만든 후 출력하는 프로그램을 작성하시오. 즉, 첫 번째 문자를 R번 반복하고, 두 번째 문자를 R번 반복하는 식으로 P를 만들면 된다 www.acmicpc.net Solution inputNum = int(input()) for i in range(inputNum): repeatNum, inputStr = input().split() answer = "" for char in inputStr: answer += int(repeatNum) * char print(answer) Solution 풀이 먼저 몇 개의 케이스를 입력 받을 것인지 입력 받습니다. ..
코딩 1일 1문제! 오늘의 첫번째 문제는 백준의 아스키 코드 입니다. 11654번: 아스키 코드 알파벳 소문자, 대문자, 숫자 0-9중 하나가 주어졌을 때, 주어진 글자의 아스키 코드값을 출력하는 프로그램을 작성하시오. www.acmicpc.net Solution inputChar = input() print(ord(inputChar)) Solution 풀이 입력받은 문자를 ord를 활용하여 구해줍니다. 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문제! 오늘의 문제는 백준의 좌표압축입니다. 18870번: 좌표 압축 수직선 위에 N개의 좌표 X1, X2, ..., XN이 있다. 이 좌표에 좌표 압축을 적용하려고 한다. Xi를 좌표 압축한 결과 X'i의 값은 Xi > Xj를 만족하는 서로 다른 좌표의 개수와 같아야 한다. X1, X2, ..., XN에 좌 www.acmicpc.net Solution from collections import Counter numbers = int(input()) inputNums = [] inputNums = list(map(int, input().split())) cnt_items = sorted(Counter(inputNums).items(), key = lambda x: x[0]) rank_dict..
코딩 1일 1문제! 오늘의 문제는 백준의 숫자의 합입니다. 11720번: 숫자의 합 첫째 줄에 숫자의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄에 숫자 N개가 공백없이 주어진다. www.acmicpc.net Solution inputNum = input() nums = input() numberList = sum(map(int, list(nums))) print(numberList) 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문제! 오늘의 문제는 백준의 나머지 입니다. 3052번: 나머지 각 수를 42로 나눈 나머지는 39, 40, 41, 0, 1, 2, 40, 41, 0, 1이다. 서로 다른 값은 6개가 있다. www.acmicpc.net Solution numList = [] for i in range(10): inputNum = int(input()) numList.append(inputNum % 42) print(len(set(numList))) 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문제! 오늘의 문제는 프로그래머스의 멀리뛰기 입니다. 코딩테스트 연습 - 멀리 뛰기 효진이는 멀리 뛰기를 연습하고 있습니다. 효진이는 한번에 1칸, 또는 2칸을 뛸 수 있습니다. 칸이 총 4개 있을 때, 효진이는 (1칸, 1칸, 1칸, 1칸) (1칸, 2칸, 1칸) (1칸, 1칸, 2칸) (2칸, 1칸, 1칸) (2칸, 2 programmers.co.kr Solution def solution(n): temp = dict() temp[0] = 1 temp[1] = 1 for i in range(2, n+1): temp[i] = temp[i-1] + temp[i-2] answer = temp[n] % 1234567 return answer SOMJANG/CODINGTEST_PRACTICE 1일..
1일 1문제! 오늘의 문제는 백준의 영화감독 숌 입니다! 1436번: 영화감독 숌 666은 종말을 나타내는 숫자라고 한다. 따라서, 많은 블록버스터 영화에서는 666이 들어간 제목을 많이 사용한다. 영화감독 숌은 세상의 종말 이라는 시리즈 영화의 감독이다. 조지 루카스는 스타 www.acmicpc.net Solution input_num = int(input()) answer = 666 while(input_num): if '666' in str(answer): input_num -= 1 answer += 1 print(answer-1) SOMJANG/CODINGTEST_PRACTICE 1일 1문제 since 2020.02.07. Contribute to SOMJANG/CODINGTEST_PRACTICE..
코딩 1일 1문제! 오늘의 문제는 프로그래머스의 하샤드 수 입니다. 코딩테스트 연습 - 하샤드 수 양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를 들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다. 자연수 x를 입력받아 x가 하 programmers.co.kr Solution def solution(x): answer = True x_num_sum = sum([int(num) for num in list(str(x))]) if x % x_num_sum != 0: answer = False return answer SOMJANG/CODINGTEST_PRACTICE 1일 1문제 since 2020.02.07. Contribute..
코딩 1일 1문제! 오늘의 문제는 2018년도 카카오 블라인드 채용 문제였던 압축입니다! 코딩테스트 연습 - [3차] 압축 TOBEORNOTTOBEORTOBEORNOT [20, 15, 2, 5, 15, 18, 14, 15, 20, 27, 29, 31, 36, 30, 32, 34] programmers.co.kr Solution def solution(msg): answer = [] new_id = 27 word_dict = dict() for ascii_num in range(65, 91): word_dict[chr(ascii_num)] = ascii_num - 64 idx_f, idx_e = 0, 0 while True: idx_e += 1 if idx_e == len(msg): answer.appen..
코딩 1일 1문제! 오늘의 문제는 프로그래머스 월간 코드 챌린지 시즌1의 문제였던 내적입니다. [Programmers] 행렬의 덧셈 (Python) 코딩 1일 1문제 오늘의 문제는 프로그래머스 행렬의 덧셈 입니다. 코딩테스트 연습 - 행렬의 덧셈 행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩 somjang.tistory.com Solution 1 def solution(a, b): answer = 0 for a_val, b_val in zip(a, b): answer += a_val * b_val return answer Solution 2 def solution(a, b): answer = 0 for i in range(len(a)): answer +=..
코딩 1일 1문제 오늘의 문제는 프로그래머스 행렬의 덧셈 입니다. 코딩테스트 연습 - 행렬의 덧셈 행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요 programmers.co.kr Solution def solution(arr1, arr2): for row in range(len(arr1)): for col in range(len(arr1[row])): arr1[row][col] = arr1[row][col] + arr2[row][col] return arr1 SOMJANG/CODINGTEST_PRACTICE 1일 1문제 since 2020.0..
코딩테스트 1일 1문제! 오늘의 문제는 2018년 카카오 블라인드 채용 문제였던 파일명 정렬입니다. 코딩테스트 연습 - [3차] 파일명 정렬 파일명 정렬 세 차례의 코딩 테스트와 두 차례의 면접이라는 기나긴 블라인드 공채를 무사히 통과해 카카오에 입사한 무지는 파일 저장소 서버 관리를 맡게 되었다. 저장소 서버에는 프로그램 programmers.co.kr Solution import re def solution(files): answer = [] head_num_tail = [re.split(r"([0-9]+)", file) for file in files] sorted_head_num_tail = sorted(head_num_tail, key=lambda x: (x[0].lower(), int(x[1]..
코딩테스트 1일 1문제! 오늘의 문제는 프로그래머스의 3진법 뒤집기 입니다. 코딩테스트 연습 - 3진법 뒤집기 자연수 n이 매개변수로 주어집니다. n을 3진법 상에서 앞뒤로 뒤집은 후, 이를 다시 10진법으로 표현한 수를 return 하도록 solution 함수를 완성해주세요. 제한사항 n은 1 이상 100,000,000 이하인 자연수 programmers.co.kr Solution def solution(n): answer = 0 ternary = "" while n > 0: n, mod = divmod(n, 3) ternary = ternary + str(mod) answer = int(ternary, 3) return answer SOMJANG/CODINGTEST_PRACTICE 1일 1문제 sin..
코딩 1일 1문제! 오늘의 문제는 프로그래머스의 이진변환 반복하기 입니다. 코딩테스트 연습 - 이진 변환 반복하기 programmers.co.kr Solution def solution(x): answer = [] cnt = 0 zero = 0 while True: if x == '1': break zero = zero + x.count("0") x = x.replace("0", "") x = bin(len(x))[2:] cnt = cnt + 1 answer = [cnt, zero] return answer Solution 풀이 먼저 삭제한 0의 개수를 저장할 zero라는 변수명과 이진변환을 수행한 횟수를 나타낼 cnt 변수 두개를 선언합니다. while 반복문을 도는데 x가 '1' 이 되면 멈추는 조건..