일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 편스토랑 우승상품
- Kaggle
- Real or Not? NLP with Disaster Tweets
- 프로그래머스 파이썬
- 우분투
- Docker
- ubuntu
- 맥북
- github
- Git
- leetcode
- 백준
- AI 경진대회
- SW Expert Academy
- dacon
- 코로나19
- 파이썬
- 자연어처리
- programmers
- 더현대서울 맛집
- PYTHON
- 금융문자분석경진대회
- gs25
- 캐치카페
- 프로그래머스
- hackerrank
- Baekjoon
- ChatGPT
- 데이콘
- 편스토랑
- Today
- Total
목록
반응형
PYTHON (460)
솜씨좋은장씨
코딩 1일 1문제! 오늘의 문제는 SW Expert Academy의 조교의 성적 매기기 입니다. SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 👨🏻💻 코드 ( Solution ) def assistant_grades(student_num, want_num, score_list): grade_list = ["A+", "A0", "A-", "B+", "B0", "B-", "C+", "C0", "C-", "D0"] each_grade_num = student_num // 10 grade_check_dict, rank_dict = {}, {} for idx, score_info in enumerate(score_l..
코딩 1일 1문제! 오늘의 문제는 SW Expert Academy의 간단한 369게임 입니다. SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 👨🏻💻 코드 ( Solution ) def convert_num_to_clap(num): check_num1, check_num2, check_num3 = '3', '6', '9' num = str(num) count_num = num.count(check_num1) + num.count(check_num2) + num.count(check_num3) return "-" * count_num if count_num > 0 else num def sam_yook_gu(N..
코딩 1일 1문제! 오늘의 문제는 프로그래머스의 나머지가 1이 되는 수 찾기 입니다. 코딩테스트 연습 - 나머지가 1이 되는 수 찾기 자연수 n이 매개변수로 주어집니다. n을 x로 나눈 나머지가 1이 되도록 하는 가장 작은 자연수 x를 return 하도록 solution 함수를 완성해주세요. 답이 항상 존재함은 증명될 수 있습니다. 제한사항 입 programmers.co.kr 👨🏻💻 문제 풀이 나머지가 1이 되는 수는 1부터 n까지 반복문을 돌면서 n % x 가 1 이되는 가장 첫번째 x를 찾으면됩니다. for x in range(1, n): if n % x == 1: answer = x break 👨🏻💻 코드 ( Solution ) def solution(n): answer = 0 for x in ..
코딩 1일 1문제! 오늘의 문제는 백준의 16진수 입니다. 1550번: 16진수 첫째 줄에 16진수 수가 주어진다. 이 수의 최대 길이는 6글자이다. 16진수 수는 0~9와 A~F로 이루어져 있고, A~F는 10~15를 뜻한다. 또, 이 수는 음이 아닌 정수이다. www.acmicpc.net 👨🏻💻 코드 ( Solution ) def convert_16_to_10(num): return int(num, 16) if __name__ == '__main__': num = input() print(convert_16_to_10(num)) GitHub - SOMJANG/CODINGTEST_PRACTICE: 1일 1문제 since 2020.02.07 1일 1문제 since 2020.02.07. Contribut..
코딩 1일 1문제! 오늘의 문제는 백준의 10936번 BASE64 디코딩 입니다. 10936번: BASE64 디코딩 첫째 줄에 문자열 S를 BASE64로 인코딩한 결과가 주어진다. S는 알파벳 대문자와 소문자, 그리고 숫자로만 이루어져 있으며, 길이는 최대 50이다. www.acmicpc.net 👨🏻💻 코드 ( Solution ) import base64 def base64_decoding(base64_string): return str(base64.b64decode(base64_string.encode('ascii')))[2:-1] if __name__ == "__main__": base64_string = input() print(base64_decoding(base64_string)) GitHub..
코딩 1일 1문제! 오늘의 문제는 백준의 0 = not cute / 1 = cute 입니다. 10886번: 0 = not cute / 1 = cute 준희는 자기가 팀에서 귀여움을 담당하고 있다고 생각한다. 하지만 연수가 볼 때 그 의견은 뭔가 좀 잘못된 것 같았다. 그렇기에 설문조사를 하여 준희가 귀여운지 아닌지 알아보기로 했다. www.acmicpc.net 👨🏻💻 코드 ( Solution ) from collections import Counter def cute_or_not(opinions): cnt = Counter(opinions).most_common(1) if cnt[0][0] == 0: answer = 'Junhee is not cute!' elif cnt[0][0] == 1: answe..
코딩 1일 1문제! 오늘의 문제는 백준의 A+B - 3 입니다. 10950번: A+B - 3 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 👨🏻💻 코드 ( Solution ) def A_PLUS_B_3(nums): num1, num2 = map(int, nums.split()) return num1 + num2 if __name__ == "__main__": for _ in range(int(input())): num = input() print(A_PLUS_B_3(num)) GitHub - SOMJANG/CODINGTEST_PRACTICE: 1일 1문제 since 2020.02.07 1일 1문제 since 2020.02.07. Contribu..
import pymysql user = 'user' password = 'password' db_host = 'localhost' db_port = 3306 table_name = 'test_table' charset = 'utf-8' db = pymysql.connect(host=db_host, port=db_port, user=user, passwd=password, db=table_name, charset=charset, autocommit=True) 오랜만에 위와 같은 방법으로 pymysql을 활용하여 database에 접근하여 저장되어있는 이미지를 다운로드 받기위해 db 연결을 하려고 하니 AttributeError: 'NoneType' object has no attribute 'encodin..
코딩 1일 1문제! 오늘의 문제는 백준의 17배입니다. 5893번: 17배 첫째 줄에 이진수 N이 주어진다. N은 최대 1000자리인 이진수이며, 0이 들어오는 경우는 없다. www.acmicpc.net 👨🏻💻 문제 풀이 number = int(bin_num, 2) 입력받은 이진수를 int를 활용하여 정수로 바꾸어줍니다. seventeen_time_num = number * 17 바꾼 정수에 17을 곱한 값을 bin(seventeen_time_num)[2:] 다시 bin을 통해 이진수로 바꾸어주면 끝! 입니다. 전체 코드는 아래를 참고해주세요. 👨🏻💻 코드 ( Solution ) def seventeen_times(bin_num): number = int(bin_num, 2) seventeen_tim..
코딩 1일 1문제! 오늘의 문제는 백준의 과자 입니다. 10156번: 과자 첫 번째 줄에는 과자 한 개의 가격 K, 사려고 하는 과자의 개수 N, 현재 동수가 가진 돈 M이 각각 공백을 사이에 두고 주어진다. 단, K, N은 1,000 이하의 양의 정수이고, M은 10만 이하의 양의 정수이 www.acmicpc.net 👨🏻💻 문제 풀이 이 문제는 내가 가지고 있는 돈으로 과자를 사려할 때 필요한 금액을 구하는 문제입니다. K, N, M = map(int, input().split()) 과자 한 개의 가격이 K / 사려고 하는 과자의 개수가 N / 현재 가진 돈의 액수를 M 으로 입력 받습니다. more_money = K * N - M 내가 더 필요한 금액은 과자 한 개의 가격 K x 사려고 하는 과자의..
코딩 1일 1문제! 오늘의 문제는 백준 10951번 A+B - 4 입니다. 10951번: A+B - 4 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 👨🏻💻 문제 풀이 입력 부분에서 EOFError를 사용하여 마지막 입력인지 아닌지를 판단하여 풀면됩니다. 👨🏻💻 코드 ( Solution ) def a_plus_b_4(num1, num2): return num1 + num2 if __name__ == "__main__": while True: try: num1, num2 = map(int, input().split()) print(a_plus_b_4(num1, num2)) except EOFError: break GitHub - SOMJANG/..
코딩 1일 1문제! 오늘의 문제는! 백준의 10부제입니다. 10797번: 10부제 서울시는 6월 1일부터 교통 혼잡을 막기 위해서 자동차 10부제를 시행한다. 자동차 10부제는 자동차 번호의 일의 자리 숫자와 날짜의 일의 자리 숫자가 일치하면 해당 자동차의 운행을 금지하는 www.acmicpc.net 👨🏻💻 문제 풀이 자동차 10부제는 자동차 번호의 일의 자리 숫자와 날짜의 일의 자리 숫자가 일치하면 해당 자동차의 운행을 금지하는 제도입니다. violate_num = input() car_numbers = input() 예제 입력을 보면 먼저 날짜의 일의 자리숫자가 입력되고 그 다음 줄에 자동차 번호를 공백을 기준으로 이어 붙은 형태의 문자열로 입력 받습니다. answer = 0 car_numbers ..
코딩 1일 1문제! 오늘의 문제는 백준의 단어순서 뒤집기 입니다. 12605번: 단어순서 뒤집기 스페이스로 띄어쓰기 된 단어들의 리스트가 주어질때, 단어들을 반대 순서로 뒤집어라. 각 라인은 w개의 영단어로 이루어져 있으며, 총 L개의 알파벳을 가진다. 각 행은 알파벳과 스페이스로만 www.acmicpc.net 👨🏻💻 문제 풀이 먼저 공백을 기준으로 나열되어있는 단어 목록을 split으로 나누어 단어 리스트로 만들어줍니다. word_list = word_list.split() [::-1] 을 활용하여 단어의 순서를 거꾸로 뒤집습니다. word_list = word_list[::-1] 이제 거꾸로 돌렸으면 join을 활용하여 다시 단어 리스트를 문자열로 만들어줍니다. answer = " ".join(wo..
코딩 1일 1문제! 오늘의 문제는 백준의 시험 성적 입니다. 9498번: 시험 성적 시험 점수를 입력받아 90 ~ 100점은 A, 80 ~ 89점은 B, 70 ~ 79점은 C, 60 ~ 69점은 D, 나머지 점수는 F를 출력하는 프로그램을 작성하시오. www.acmicpc.net 👨🏻💻 문제 풀이 시험 성적을 입력받고 score = int(input()) 시험 점수를 입력받아 90 ~ 100점은 A, 80 ~ 89점은 B, 70 ~ 79점은 C, 60 ~ 69점은 D, 나머지 점수는 F를 출력 위의 조건에 맞추어 if를 활용하여 출력할 값을 정해줍니다. result = "F" if 90
코딩 1일 1문제! 오늘의 문제는 프로그래머스의 올바른 괄호 입니다. 코딩테스트 연습 - 올바른 괄호 괄호가 바르게 짝지어졌다는 것은 '(' 문자로 열렸으면 반드시 짝지어서 ')' 문자로 닫혀야 한다는 뜻입니다. 예를 들어 "()()" 또는 "(())()" 는 올바른 괄호입니다. ")()(" 또는 "(()(" 는 올바르지 않은 programmers.co.kr 👨🏻💻 코드 ( Solution ) def solution(s): answer = True mystack = [] for idx, bracket in enumerate(s): if bracket == "(": mystack.append(bracket) else: try: if mystack.pop() == "(": pass except: answe..
코딩 1일 1문제! 오늘의 문제는 백준의 15904번 UCPC는 무엇의 약자일까? 입니다. 15904번: UCPC는 무엇의 약자일까? 첫 번째 줄에 알파벳 대소문자, 공백으로 구성된 문자열이 주어진다. 문자열의 길이는 최대 1,000자이다. 문자열의 맨 앞과 맨 끝에 공백이 있는 경우는 없고, 공백이 연속해서 2번 이상 주어지는 www.acmicpc.net 👨🏻💻 문제 풀이 이 문제는 문자열이 주어지면 이 문자열을 UCPC로 축약시킬 수 있는지 없는지를 보는 문제입니다. apple 에서 a와 e를 빼서 ppl을 만들 수도 있고 I love UCPC에서 I love를 제외하고 이를 UCPC로 축약시킬수도 있습니다. 다만 대소문자를 구분하여 UcPC와 UCPC는 다른 문자열입니다. 처음에는 각 단어의 첫 ..
코딩 1일 1문제! 오늘의 문제는 백준의 홀수 입니다. 2576번: 홀수 7개의 자연수가 주어질 때, 이들 중 홀수인 자연수들을 모두 골라 그 합을 구하고, 고른 홀수들 중 최솟값을 찾는 프로그램을 작성하시오. 예를 들어, 7개의 자연수 12, 77, 38, 41, 53, 92, 85가 주어지 www.acmicpc.net 👨🏻💻 문제 풀이 numbers = [] for _ in range(7): number = int(input()) numbers.append(number) 먼저 7개의 숫자를 입력받아 numbers 리스트에 저장합니다. odd_nums = [num for num in numbers if num % 2 == 1] if len(odd_nums) == 0: answer = [-1] else..
코딩 1일 1문제! 오늘의 문제는 백준의 두 수 비교하기 입니다. 1330번: 두 수 비교하기 두 정수 A와 B가 주어졌을 때, A와 B를 비교하는 프로그램을 작성하시오. www.acmicpc.net 👨🏻💻 문제 풀이 A, B = map(int, input().split()) 입력 받은 두 수를 공백을 기준으로 split한 다음 이를 map(int) 를 활용하여 A, B로 나누어 줍니다. answer = "==" if A > B: answer = ">" elif A < B: answer = "" elif A < B: answer = "
코딩 1일 1문제! 오늘의 문제는 백준의 단어 뒤집기 입니다. 9093번: 단어 뒤집기 첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 문장이 하나 주어진다. 단어의 길이는 최대 20, 문장의 길이는 최대 1000이다. 단어와 단어 사이에는 www.acmicpc.net 👨🏻💻 문제 풀이 문자열을 공백으로 split한 다음 각 단어를 [::-1]을 활용하여 뒤집은 후에 words = [word[::-1] for word in string.split()] " ".join( ) 을 활용하여 다시 하나의 문자열로 만들어주면 끝! " ".join(words) 전체 코드는 아래를 참고해주세요. 👨🏻💻 코드 ( Solution ) def reverse_word(str..
코딩 1일 1문제! 오늘의 문제는 프로그래머스 위클리 챌린지 8주차! 최소직사각형 입니다. 코딩테스트 연습 - 8주차 [[10, 7], [12, 3], [8, 15], [14, 7], [5, 15]] 120 [[14, 4], [19, 6], [6, 16], [18, 7], [7, 11]] 133 programmers.co.kr 👨🏻💻 코드 풀이 여러 명함의 크기를 알려주면 이 모든 명함들을 담을 수 있는 가장 작은 크기의 명함케이스의 크기를 구하는 문제입니다. 의외로 엄청 쉽게 풀 수 있는 문제입니다. 명함의 가로 세로 길이 중에서 가장 긴 길이로 먼저 명함케이스의 길이를 지정하면 쉽게 풀 수 있는 문제입니다. 먼저 각 명함의 길이들을 앞쪽에 더 긴 길이가 오도록 정렬합니다. [[60, 50], [30..
코딩 1일 1문제! 오늘의 문제는 백준의 단어 나누기 입니다. 1251번: 단어 나누기 알파벳 소문자로 이루어진 단어를 가지고 아래와 같은 과정을 해 보려고 한다. 먼저 단어에서 임의의 두 부분을 골라서 단어를 쪼갠다. 즉, 주어진 단어를 세 개의 더 작은 단어로 나누는 것이다 www.acmicpc.net 👨🏻💻문제 풀이 반복문을 통해서 모든 케이스의 단어를 만든 뒤에 그 중 가장 첫 번째로 오는 단어를 출력하면 됩니다. 👨🏻💻 코드 ( Solution ) def word_split(word): temp_list = [] for i in range(len(word) - 2): for idx in range(len(word) - 1): for idx2 in range(len(word)): temp = ..
코딩 1일 1문제! 오늘의 문제는 5와 6의 차이입니다. 2864번: 5와 6의 차이 첫째 줄에 두 정수 A와 B가 주어진다. (1
코딩 1일 1문제! 오늘의 문제는 백준의 중복 빼고 정렬하기 입니다. 10867번: 중복 빼고 정렬하기 첫째 줄에 수의 개수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째에는 숫자가 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다. www.acmicpc.net 👨🏻💻 문제 풀이 set을 활용하여 중복을 제거한 뒤 sorted 또는 sort를 활용하여 정렬하면 쉽게 풀 수 있는 문제입니다. _ = input() numbers = input() 먼저 숫자의 개수와 숫자들이 공백을 사이에 두고 이어져있는 문자열을 입력 받습니다. numbers = list(map(int, numbers.split())) numbers = sorted(list(set(numbers))) 숫자들이 이어져있..
코딩 1일 1문제! 오늘의 문제는 삼성 SW Expert Academy 10570번 제곱 팰린드롬 수 입니다. 제곱 팰린드롬 수 문제를 파이썬으로 풀이하였습니다. SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 👨🏻💻 문제 풀이 주어진 숫자 두개 사이의 숫자들 중에 현재 숫자와 숫자의 제곱근 수 ( 루트(숫자) ) 값이 모두 팰린드롬 수 인 값들의 개수를 구하는 문제입니다. result = False sqrt_num = math.sqrt(num) num = str(num) if float(int(sqrt_num)) == sqrt_num: sqrt_num = str(int(sqrt_num)) if num == ..
드디어 2주간의 자가격리가 해제된 오늘!!!! 코딩 1일 1문제! 오늘의 문제는 백준의 배수와 약수 입니다. 쉬운 문제 빨리 풀고 맛있는 것을 먹으러 가야겠습니다.🤩 5086번: 배수와 약수 각 테스트 케이스마다 첫 번째 숫자가 두 번째 숫자의 약수라면 factor를, 배수라면 multiple을, 둘 다 아니라면 neither를 출력한다. www.acmicpc.net 👨🏻💻 문제 풀이 문자열을 계속 입력 받는데 이때 입력 받은 문자열이 "0 0" 일 경우 반복을 중단하도록 합니다. while True: input_str = input() if input_str == "0 0": break 그렇지 않은 경우에는 입력 받은 문자열을 split을 활용하여 공백으로 쪼갠 후에 num1, num2 = map(i..
코딩 1일 1문제! 오늘의 문제는 백준의 5363번 요다입니다! 5363번: 요다 첫째 줄에 문장의 수 N이 주어진다. 둘째 줄부터 N개의 줄에는 각 문장이 주어진다. 문장의 길이는 100글자 이내이다. 단어의 개수는 3개 이상이다. www.acmicpc.net 👨🏻💻 문제 풀이 입력받은 문자열을 공백으로 나눈 뒤 string = string.split() 앞의 두글자를 뒤로 붙이고 나머지를 앞으로 붙여줍니다. string = string[2:] + string[:2] 그리고 다시 join하면 끝! " ".join(string) 👨🏻💻 코드 ( Solution ) def yoda(string): string = string.split() string = string[2:] + string[:2] re..
코딩 1일 1문제! 오늘의 문제는 백준 3783번 세제곱근 입니다. 3783번: 세제곱근 각 테스트 케이스에 대해서, 입력으로 주어진 수의 세제곱근을 소수점 10째짜리까지 출력한다. 이때, 반올림을 하는 것이 아니고, 버림을 해야 한다. www.acmicpc.net 👨🏻💻 코드 ( Solution ) import decimal def cube_root(input_num): decimal_num = decimal.Decimal(input_num + '.0000000000') pow_num = decimal.Decimal('1') / decimal.Decimal('3') decimal_num = decimal.Decimal(decimal_num ** pow_num) decimal_num = round(de..
코딩 1일 1문제! 오늘의 문제는 백준의 7983번 내일 할거야 입니다. 7983번: 내일 할거야 내일(1일)부터 연속으로 최대 며칠 동안 놀 수 있는지를 출력한다. 가령, 답이 0이면, 내일 과제를 해야 하며, 1 이면, 모레에 과제를 해야 한다. www.acmicpc.net 👨🏻💻 코드 ( Solution ) from sys import stdin input = stdin.readline def i_will_do_it_tomorrow(homework_info): homework_info = sorted(homework_info, key=lambda x: -x[1]) now = homework_info[0][1] - homework_info[0][0] for i in range(1, len(homew..
코딩 1일 1문제 오늘의 문제는 백준의 님 무기가 좀 나쁘시네여 입니다. 11387번: 님 무기가 좀 나쁘시네여 각 줄마다 "공격력", "힘", "치명타 확률", "치명타 피해비율", "공격속도 증가"의 수치를 나타내는 다섯 개의 정수가 공백을 사이에 두고 순서대로 주어진다. 첫 번째 줄은 무기를 장착한 크리의 www.acmicpc.net 👨🏻💻 코드 ( Solution ) def weapon_power(now,weapon): return (now[0]+weapon[0]) * (100+now[1]+weapon[1]) * ( 100*(100-min(now[2]+weapon[2],100)) + min(now[2]+weapon[2],100) * (now[3]+weapon[3])) * (100+now[4]+w..
코딩 1일 1문제! 오늘의 문제는 백준의 나는 너가 살아온 날을 알고 있다 입니다. 백준의 2139번 나는 너가 살아온 날을 알고 있다 문제를 파이썬으로 풀이하였습니다. 2139번: 나는 너가 살아온 날을 알고 있다 우리는 일상생활에서 휴가 일수를 계산하는 것 처럼 두 날짜 사이의 기간을 계산해야 하는 경우가 많다. 이때, 계산을 하는 가장 간단한 방법은 적당한 날짜를 잡은 뒤 계산할 날짜가 될 때까지 www.acmicpc.net 👨🏻💻 문제 풀이 일, 월, 년도 의 값을 입력받으면 해당 년도의 1월 1일 부터 입력 받은 날까지 몇 일이 지났는지를 구하는 문제입니다. 이 문제는 datetime을 활용하면 정말 쉽게 풀 수 있습니다. 입력 받은 일, 월, 년도의 값을 datetime에 넣어 datetim..