일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Git
- SW Expert Academy
- 파이썬
- 캐치카페
- Baekjoon
- hackerrank
- ChatGPT
- 자연어처리
- github
- 백준
- Docker
- 편스토랑 우승상품
- Kaggle
- 프로그래머스
- 우분투
- 편스토랑
- 금융문자분석경진대회
- gs25
- 프로그래머스 파이썬
- ubuntu
- Real or Not? NLP with Disaster Tweets
- dacon
- PYTHON
- leetcode
- 더현대서울 맛집
- 코로나19
- AI 경진대회
- 맥북
- 데이콘
- programmers
- Today
- Total
목록
반응형
Programming/코딩 1일 1문제 (1013)
솜씨좋은장씨
코딩 1일 1문제! 오늘의 문제는 백준의 분수 합 입니다. 1735번: 분수 합 첫째 줄과 둘째 줄에, 각 분수의 분자와 분모를 뜻하는 두 개의 자연수가 순서대로 주어진다. 입력되는 네 자연수는 모두 30,000 이하이다. www.acmicpc.net 👨🏻💻 문제 풀이 이 문제는 최소 공배수와 최대 공약수를 활용하여 풀었습니다. 이에 먼저 파이썬의 기본 내장 라이브러리인 math의 gcd를 활용하여 최대 공약수와 최소공배수를 구해주는 함수를 먼저 만들어주었습니다. def LCM(N, M): return N*M // gcd(N, M) def GCD(N, M): return gcd(N, M) 그 다음 예제 입력을 참고하여 분수 2개를 입력 받았습니다. frac1 = list(map(int, input()...
코딩 1일 1문제 오늘의 문제는 백준의 세수정렬입니다. 2752번: 세수정렬 숫자 세 개가 주어진다. 이 숫자는 1보다 크거나 같고, 1,000,000보다 작거나 같다. 이 숫자는 모두 다르다. www.acmicpc.net 👨🏻💻 코드 ( Solution ) def order_three_numbers(numbers): return " ".join(map(str, sorted(numbers))) if __name__ == "__main__": numbers = list(map(int, input().split())) print(order_three_numbers(numbers)) GitHub - SOMJANG/CODINGTEST_PRACTICE: 1일 1문제 since 2020.02.07 1일 1문제 s..
코딩 1일 1문제! 오늘은 555일차 문제! 백준의 빈도 정렬 입니다. 2910번: 빈도 정렬 첫째 줄에 메시지의 길이 N과 C가 주어진다. (1 ≤ N ≤ 1,000, 1 ≤ C ≤ 1,000,000,000) 둘째 줄에 메시지 수열이 주어진다. www.acmicpc.net 👨🏻💻 코드 ( Solution ) import sys def frequency_sorting(numbers): order_cnt_dict = {} priority_dict = {} for idx, number in enumerate(numbers): if number not in order_cnt_dict.keys(): order_cnt_dict[number] = [0, idx] order_cnt_dict[number][0] +=..
코딩 1일 1문제! 오늘의 문제는 백준의 구간 합 구하기 4 입니다. 11659번: 구간 합 구하기 4 첫째 줄에 수의 개수 N과 합을 구해야 하는 횟수 M이 주어진다. 둘째 줄에는 N개의 수가 주어진다. 수는 1,000보다 작거나 같은 자연수이다. 셋째 줄부터 M개의 줄에는 합을 구해야 하는 구간 i와 j www.acmicpc.net 👨🏻💻 문제 풀이 엄청 쉬워보여서 빨리 풀고 다른 남은 작업을 진행해보려고 했는데 생각보다 시간초과 문제 때문에 너무 오랜 시간 풀었던 문제 입니다. def get_div_sum_4(numbers, i, j): return sum(numbers[i-1:j]) if __name__ == "__main__": numbers_len, loop_num = map(int, inp..
코딩 1일 1문제! 오늘의 문제는 백준의 A+B - 5 입니다. 10952번: A+B - 5 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 👨🏻💻 코드 ( Solution ) def a_plus_b_5(num1, num2): return num1 + num2 if __name__ == "__main__": while True: num1, num2 = map(int, input().split()) if num1 == 0 and num2 == 0: break print(a_plus_b_5(num1, num2)) GitHub - SOMJANG/CODINGTEST_PRACTICE: 1일 1문제 since 2020.02.07 1일 1문제 since 20..
코딩 1일 1문제! 오늘의 문제는 SW Expert Academy의 몫과 나머지 출력하기 입니다. SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 👨🏻💻 코드 ( Solution ) def quotient_remainder(num1, num2): quotient = num1 // num2 remainder = num1 % num2 return f"{quotient} {remainder}" if __name__ == "__main__": for idx in range(int(input())): num1, num2 = map(int, input().split()) print(f"#{idx+1} {quotient_..
코딩 1일 1문제! 오늘의 문제는 SW Expert Academy의 시각 덧셈 입니다. SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 👨🏻💻 코드 ( Solution ) def time_sum(time1, time2): hour1, minute1 = time1[0], time1[1] hour2, minute2 = time2[0], time2[1] more_hour = 0 sum_minute = minute1 + minute2 if sum_minute >= 60: sum_minute -= 60 more_hour += 1 sum_hour = hour1 + hour2 + more_hour if sum_hour >..
코딩 1일 1문제! 오늘의 문제는 SW Expert Academy 의 숫자를 정렬하자 입니다. SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 👨🏻💻 코드 ( Solution ) def sort_numbers(numbers): numbers = list(map(str, sorted(numbers))) return " ".join(numbers) if __name__ == "__main__": for idx in range(int(input())): N = int(input()) numbers = list(map(int, input().split())) print(f"#{idx+1} {sort_numbers(n..
코딩 1일 1문제! 오늘의 문제는 SW Expert Academy의 모음이 보이지 않는 사람 입니다. SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 👨🏻💻 코드 ( Solution ) def who_can_not_see_the_vowels(words): vowels = ['a', 'e', 'i', 'o', 'u'] characters = [word for word in list(words) if word not in vowels] return "".join(characters) if __name__ == "__main__": for idx in range(int(input())): words = input(..
코딩 1일 1문제! 오늘의 문제는 SW Expert Academy의 날짜 계산기 입니다. SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 👨🏻💻 코드 ( Solution ) from datetime import datetime def calculate_date(date_list): day1 = datetime(year=2021, month=date_list[0], day=date_list[1]) day2 = datetime(year=2021, month=date_list[2], day=date_list[3]) return (day2 - day1).days + 1 if __name__ == "__main__":..
코딩 1일 1문제! 오늘의 문제는 SW Expert Academy의 중간값 찾기 입니다. SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 👨🏻💻 코드 ( Solution ) def find_middle_number(numbers, N): numbers = sorted(numbers) return numbers[N//2] if __name__ == "__main__": N = int(input()) numbers = list(map(int, input().split())) print(find_middle_number(numbers, N)) GitHub - SOMJANG/CODINGTEST_PRACTICE: 1일..
코딩 1일 1문제! 오늘의 문제는 백준의 보물 입니다. 1026번: 보물 첫째 줄에 N이 주어진다. 둘째 줄에는 A에 있는 N개의 수가 순서대로 주어지고, 셋째 줄에는 B에 있는 수가 순서대로 주어진다. N은 50보다 작거나 같은 자연수이고, A와 B의 각 원소는 100보다 작거 www.acmicpc.net 👨🏻💻 코드 ( Solution ) def treasure(A, B): answer = 0 check_list = [] for i in range(len(B)): check_list.append((i, B[i])) sorted_A = sorted(A) sorted_B = sorted(check_list, key=lambda x: -x[1]) index_list = [idx[0] for idx in ..
코딩 1일 1문제! 오늘의 문제는 백준의 나는 요리사다 입니다. 2953번: 나는 요리사다 "나는 요리사다"는 다섯 참가자들이 서로의 요리 실력을 뽐내는 티비 프로이다. 각 참가자는 자신있는 음식을 하나씩 만들어오고, 서로 다른 사람의 음식을 점수로 평가해준다. 점수는 1점부터 5 www.acmicpc.net 👨🏻💻 코드 ( Solution ) def i_am_chef(score_list): rank_dict = {} for idx in range(len(score_list)): rank_dict[idx+1] = sum(score_list[idx]) sorted_rank = sorted(rank_dict.items(), key=lambda x: -x[1]) winner = sorted_rank[0] r..
코딩 1일 1문제! 오늘의 문제는 백준의 영수증 입니다. 5565번: 영수증 첫째 줄에 10권의 총 가격이 주어진다. 둘째 줄부터 9개 줄에는 가격을 읽을 수 있는 책 9권의 가격이 주어진다. 책의 가격은 10,000이하인 양의 정수이다. www.acmicpc.net 👨🏻💻 코드 ( Solution ) def bill(total_price, book_price_list): return total_price - sum(book_price_list) if __name__ == "__main__": total_price = int(input()) book_price_list = [] for _ in range(9): book_price = int(input()) book_price_list.append(bo..
코딩 1일 1문제! 오늘의 문제는 백준의 한다 안한다 입니다. 5789번: 한다 안한다 첫째 줄에는 테스트 케이스의 개수 N이 주어진다. (1 ≤ N ≤ 1000) 각 테스트 케이스는 한 줄로 이루어져 있으며, 0과 1로 이루어진 문자열이 주어진다. 문자열의 길이는 항상 짝수이고, 1000보다 작 www.acmicpc.net 👨🏻💻 코드 ( Solution ) def handa_anhanda(numbers): answer = 'Do-it' loop_num = len(numbers) // 2 for i in range(loop_num): if numbers[i] != numbers[len(numbers) - i - 1]: answer = 'Do-it-Not' else: answer = 'Do-it' re..
코딩 1일 1문제! 오늘의 문제는 백준의 소음입니다. 2935번: 소음 수업 시간에 떠드는 두 학생이 있다. 두 학생은 수업에 집중하는 대신에 글로벌 경제 위기에 대해서 토론하고 있었다. 토론이 점점 과열되면서 두 학생은 목소리를 높였고, 결국 선생님은 크게 www.acmicpc.net 👨🏻💻 코드 ( Solution ) def noise(A, operator, B): answer = 0 if operator == "*": answer = A * B elif operator == "+": answer = A + B return answer if __name__ == "__main__": A = int(input()) operator = input() B = int(input()) print(noise(..
코딩 1일 1문제! 오늘의 문제는 백준의 음계입니다. 2920번: 음계 다장조는 c d e f g a b C, 총 8개 음으로 이루어져있다. 이 문제에서 8개 음은 다음과 같이 숫자로 바꾸어 표현한다. c는 1로, d는 2로, ..., C를 8로 바꾼다. 1부터 8까지 차례대로 연주한다면 ascending, 8 www.acmicpc.net 👨🏻💻 코드 ( Solution ) def scale(numbers): answer = "mixed" start_num, end_num = min(numbers), max(numbers) if list(range(start_num, end_num + 1)) == numbers: answer = "ascending" elif list(range(end_num, star..
코딩 1일 1문제! 오늘의 문제는 백준의 손익분기점 입니다. 1712번: 손익분기점 월드전자는 노트북을 제조하고 판매하는 회사이다. 노트북 판매 대수에 상관없이 매년 임대료, 재산세, 보험료, 급여 등 A만원의 고정 비용이 들며, 한 대의 노트북을 생산하는 데에는 재료비와 www.acmicpc.net 👨🏻💻 문제 풀이 고정비용, 가변비용, 제품의 가격을 알려 주었을 때 손익분기점을 구하는 문제입니다. 손익분기점 = 총 고정비용 / ( 가격 - 가변비용 ) 위의 공식을 활용하여 문제를 풀었습니다. fixed_cost, variable_cost, price = map(int, input().split()) 먼저 고정비용, 가변비용, 제품의 가격을 입력 받습니다. break_even_point_num = f..
오늘은! 생일을 맞아! 코딩 1일 1문제! 백준의 생일을 풀어보았습니다. 5635번: 생일 어떤 반에 있는 학생들의 생일이 주어졌을 때, 가장 나이가 적은 사람과 가장 많은 사람을 구하는 프로그램을 작성하시오. www.acmicpc.net 👨🏻💻 문제 풀이 이름, 일, 월, 년도 목록을 쭉 입력 받으면 그 목록 중에서 가장 어린 사람, 가장 나이든 사람의 이름을 차례대로 출력하는 문제입니다. 이 문제는 datetime을 활용하면 정말정말 쉽게 풀 수 있습니다. birthday_infos = [] for _ in range(int(input())): birthday_info = input().split() birthday_infos.append(birthday_info) 먼저 예제 입력을 보고 이름, 일..
코딩 1일 1문제! 오늘의 문제는 SW Expert Academy 의 자릿수 더하기 입니다. SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 👨🏻💻 코드 ( Solution ) def add_digits(numbers): return sum(list(map(int, list(numbers)))) if __name__ == "__main__": numbers = input() print(add_digits(numbers)) GitHub - SOMJANG/CODINGTEST_PRACTICE: 1일 1문제 since 2020.02.07 1일 1문제 since 2020.02.07. Contribute to SOMJA..
코딩 1일 1문제! 오늘의 문제는 SW Expert Academy의 초심자의 회문 검사입니다. SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 👨🏻💻 코드 ( Solution ) def palindrome_check(string): return int(string == string[::-1]) if __name__ == "__main__": for idx in range(int(input())): string = input() print(f"#{idx+1} {palindrome_check(string)}") GitHub - SOMJANG/CODINGTEST_PRACTICE: 1일 1문제 since 2020.0..
코딩 1일 1문제! 오늘의 문제는 SW Expert Academy의 수도 요금 경쟁 입니다. SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 👨🏻💻 코드 ( Solution ) def water_bill(pqrsw): answer = 0 bill_for_liter = pqrsw[0] base_bill, base_liter, additional_bill = pqrsw[1], pqrsw[2], pqrsw[3] usage = pqrsw[4] a_bill = bill_for_liter * usage std = usage - base_liter if std > 0: b_bill = std * additional_bil..
코딩 1일 1문제 오늘의 문제는 SW Expert Academy의 중간 평균값 구하기 입니다. SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 👨🏻💻 코드 ( Solution ) def get_middle_avg(scores): sum_score = sum(scores) - min(scores) - max(scores) avg_score = sum_score / (len(scores) - 2) return round(avg_score) if __name__ == "__main__": for idx in range(int(input())): scores = list(map(int, input().split())..
코딩 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의 패턴 마디의 길이 입니다. SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 👨🏻💻 코드 ( Solution ) def pattern_length(string): answer = 1 for i in range(1, 11): if string[0:i] == string[i:i+i]: answer = i break return answer if __name__ == "__main__": for i in range(int(input())): string = input() print(f"#{i+1} {pattern_length(string)}") Gi..
코딩 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문제! 오늘의 문제는 백준의 일곱 난쟁이 입니다. 2309번: 일곱 난쟁이 아홉 개의 줄에 걸쳐 난쟁이들의 키가 주어진다. 주어지는 키는 100을 넘지 않는 자연수이며, 아홉 난쟁이의 키는 모두 다르며, 가능한 정답이 여러 가지인 경우에는 아무거나 출력한다. www.acmicpc.net 👨🏻💻 코드 ( Solution ) from itertools import combinations def seven_dwarfs(dwarfs): check_list = [comb for comb in list(combinations(dwarfs, 7)) if sum(comb) == 100] return sorted(check_list[0]) if __name__ == "__main__": dwarfs = [..
코딩 1일 1문제! 오늘의 문제는 프로그래머스의 2018 KAKAO BLIND RECUITMENT 1차 비밀지도 입니다. 코딩테스트 연습 - [1차] 비밀지도 비밀지도 네오는 평소 프로도가 비상금을 숨겨놓는 장소를 알려줄 비밀지도를 손에 넣었다. 그런데 이 비밀지도는 숫자로 암호화되어 있어 위치를 확인하기 위해서는 암호를 해독해야 한다. 다 programmers.co.kr 👨🏻💻 문제 풀이 문제를 딱 본 순간 이진수로 변환 한 수들을 비트연산자를 활용하여 계산하고 이를 활용하여 정답을 만들면 되겠다 생각이 들었습니다. 문제에서 설명하는 그림을 보면 맨 오른쪽에 # 이 그려져 있는 부분을 보면 왼쪽 두 그림 속 # 의 위치를 겹친 모습입니다. 그런데 #의 위치는 1의 위치이므로 0과 0일때만 0이고 나머..
코딩 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..