일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- github
- ubuntu
- 파이썬
- SW Expert Academy
- Real or Not? NLP with Disaster Tweets
- Baekjoon
- dacon
- leetcode
- elasticsearch
- gs25
- selenium
- hackerrank
- Docker
- 맥북
- 더현대서울 맛집
- Kaggle
- 자연어처리
- 캐치카페
- 우분투
- 금융문자분석경진대회
- programmers
- 코로나19
- 캐글
- Git
- 백준
- 편스토랑
- 프로그래머스
- AI 경진대회
- 데이콘
- PYTHON
- Today
- 3,549
- Total
- 1,726,734
목록
반응형
백준 (386)
솜씨좋은장씨

코딩 1일 1문제! 오늘의 문제는 백준의 자기복제수 입니다. 2028번: 자기복제수 어떤 자연수 N을 제곱했을 때, 그 제곱수의 맨 뒷자리에 원래의 수 N이 다시 나타나면, 우리는 그 수 N을 자기복제수라고 한다. 예를 들면, 5의 제곱은 52는 25이고 25의 맨 뒷자리에 원래의 수 5가 www.acmicpc.net 👨🏻💻 코드 ( Solution ) def is_self_replicating_number(number): is_replicating = False pow_num = pow(number, 2) number_split_idx = len(str(number)) * -1 if str(number) == str(pow_num)[number_split_idx:]: is_replicating = T..

def can_you_add_this(num1, num2): return num1 + num2 if __name__ == "__main__": for _ in range(int(input())): num1, num2 = map(int, input().split()) print(can_you_add_this(num1, num2)) 코딩 1일 1문제! 오늘의 문제는 백준의 Can you add this? 입니다. 7891번: Can you add this? The input contains several test cases. The first line contains and integer t (t ≤ 100) denoting the number of test cases. Then t tests follow,..

코딩 1일 1문제! 오늘의 문제는 백준의 입실 관리 입니다. 5524번: 입실 관리 JOI회사에서는 방에 들어가기 위해 입실 기록을 입력할 때 알파벳으로 이름을 입력한다. 그런데, 컴퓨터에 오류가 나서 대문자 소문자가 섞여버려 입실 기록이 읽기 힘들어졌다. JOI회사의 입실 www.acmicpc.net 👨🏻💻 코드 ( Solution ) def str_lower(string): return string.lower() def room_management(name_list): for idx, name in enumerate(name_list): name_list[idx] = str_lower(string=name) return name_list if __name__ == "__main__": name_li..

정말 바빴던 요즘! 드디어 근 3일만에! 문제를 풀게 되었습니다. 코딩 1일 1문제! 오늘의 문제는! 백준의 모든 약수의 합 입니다. 👨🏻💻 문제 풀이 먼저 입력받은 수의 약수를 구하는 함수를 먼저 하나 만들어 주었습니다. def find_a_factor(N): factor_list = [] cnt = 0 for num in range(1, (N // 2) + 1): if N % num == 0: factor_list.append(num) return factor_list 2022.06.27 - [Programming/코딩 1일 1문제] - [BaekJoon] 2501번 : 약수 구하기 (Python) [BaekJoon] 2501번 : 약수 구하기 (Python) 코딩 1일 1문제! 오늘의 문제는 백준..

코딩 1일 1문제! 오늘의 문제는 백준의 욱 제 입니다. 17356번: 욱 제 욱의 욱제력과 제의 욱제력이 한 줄에 주어진다. 욱제력은 0 이상 5,000 이하의 정수이다. www.acmicpc.net 👨🏻💻 코드 ( Solution ) def wook_jae(A, B): M = (B - A) / 400 return 1 / (1 + pow(10, M)) if __name__ == "__main__": A, B = map(int, input().split()) print(wook_jae(A, B)) GitHub - SOMJANG/CODINGTEST_PRACTICE: 1일 1문제 since 2020.02.07 1일 1문제 since 2020.02.07. Contribute to SOMJANG/CODINGT..

코딩 1일 1문제! 오늘의 문제는 백준의 중간계 전쟁 입니다. 4435번: 중간계 전쟁 첫째 줄에 전투의 개수 T가 주어진다. 각 전투는 두 줄로 이루어져 있다. 첫째 줄에 간달프 군대에 참여한 종족의 수가 주어진다. 이 값은 공백으로 구분되어 있으며, 호빗, 인간, 엘프, 드워프, www.acmicpc.net 👨🏻💻 코드 ( Solution ) def gandalf_vs_sauron(battle): gandalf_soldier_score_info = [1, 2, 3, 3, 4, 10] sauron_soldier_score_info = [1, 2, 2, 2, 3, 5, 10] gandalf_soldier_list, sauron_soldier_list = battle[0], battle[1] gandal..

코딩 1일 1문제! 오늘의 문제는 백준의 대표값 2 입니다. 2587번: 대표값2 어떤 수들이 있을 때, 그 수들을 대표하는 값으로 가장 흔하게 쓰이는 것은 평균이다. 평균은 주어진 모든 수의 합을 수의 개수로 나눈 것이다. 예를 들어 10, 40, 30, 60, 30의 평균은 (10 + 40 + 30 + 60 + www.acmicpc.net 👨🏻💻 코드 ( Solution ) def representative_value_2(numbers): return (sum(numbers) // len(numbers)), sorted(numbers)[2] if __name__ == "__main__": numbers = [] for _ in range(5): numbers.append(int(input())) a..

코딩 1일 1문제! 오늘의 문제는 백준의 수학은 체육과목 입니다 2 입니다. 17362번: 수학은 체육과목 입니다 2 첫 번째 줄에 19번 문제 세 번째 줄에 등장하는 수 '1000'을 자연수 n으로 바꾸었을 때 그에 해당하는 답의 번호를 출력한다. 즉, 1 이상 5 이하의 자연수 중 하나를 출력해야 한다. www.acmicpc.net 👨🏻💻 코드 ( Solution ) def mathematics_is_a_physical_education_subject(n): finger_check = n % 8 if finger_check in {1}: answer = 1 elif finger_check in {0, 2}: answer = 2 elif finger_check in {3, 7}: answer = 3 ..

코딩 1일 1문제! 오늘의 문제는 백준의 성택이의 은밀한 비밀번호 입니다. 25372번: 성택이의 은밀한 비밀번호 부산사이버대학교 학생 성택이는 엄마의 의뢰를 받아 주어진 문자열이 현관문 비밀번호에 사용 가능한지 알아내야 한다. 성택이는 공부해야 하므로 우리가 도와주자! 사용할 수 있는 비밀번호 www.acmicpc.net 👨🏻💻 코드 ( Solution ) def is_valid_password(password): is_valid = False if 5 < len(password) < 10: is_valid = True return is_valid def sungtak_secret_password(password): answer= "no" is_valid = is_valid_password(passw..

코딩 1일 1문제! 오늘의 문제는 백준의 짝수를 찾아라 입니다. 👨🏻💻 코드 ( Solution ) def find_even_number(numbers): even_numbers = [number for number in numbers if number % 2 == 0] return f"{sum(even_numbers)} {min(even_numbers)}" if __name__ == "__main__": N = int(input()) for _ in range(N): numbers = list(map(int, input().split())) print(find_even_number(numbers)) GitHub - SOMJANG/CODINGTEST_PRACTICE: 1일 1문제 since 2020.0..

코딩 1일 1문제! 오늘의 문제는 백준의 동전 게임 입니다. 2684번: 동전 게임 동전게임은 주로 두 사람이 함께 즐기는 게임이다. 이 중 3-동전게임은 여러 명이 할 수 있는 게임이다. 각 사람은 각각 3-동전수열 중 하나를 선택한다. 3-동전수열이란 앞 뒤 앞과 같은 수열이 www.acmicpc.net 👨🏻💻 코드 ( Solution ) def check_coin_case(case): check_list = [ "TTT", "TTH", "THT", "THH", "HTT", "HTH", "HHT", "HHH", ] check_result = [] for check in check_list: check_count = 0 for idx in range(len(case) - len(check) + 1):..

코딩 1일 1문제! 오늘의 문제는 UCPC에서 가장 쉬운 문제 번호는? 입니다. 25311번: UCPC에서 가장 쉬운 문제 번호는? 대회 참가자는 되도록 일찍 대회의 모든 문제를 한 번씩 읽어 보는 것이 권장됩니다. 이렇게 하면 대회의 전체적인 분위기를 느낄 수 있고, 종종 비교적 쉬운 문제를 빨리 발견해서 속도에서 우 www.acmicpc.net 👨🏻💻 코드 ( Solution ) def easieat_problem_number_in_the_year_at_ucpc(year): problem_number = "A" if year == 2018 or year == 2019 or year == 2020 or year == 2021 or year == 2022: problem_number = "A" retu..

코딩 1일 1문제! 오늘의 문제는 백준의 Gnome Sequencing 입니다. 4589번: Gnome Sequencing In the book All Creatures of Mythology, gnomes are kind, bearded creatures, while goblins tend to be bossy and simple-minded. The goblins like to harass the gnomes by making them line up in groups of three, ordered by the length of their beards. The gnomes www.acmicpc.net 👨🏻💻 코드 ( Solution ) def gnomes_is_ordered_or_not(gnomes..

코딩 1일 1문제! 오늘의 문제는 백준의 펫 입니다. 1362번: 펫 당신은 게임으로 펫을 기르고 있습니다. 이 펫은 웃는 표정, 슬픈 표정을 가지고 있으며, 만약 죽는다면 '드러눕습니다.' 펫에게는 적정 체중이 있습니다. 펫의 실제 체중이 적정 체중의 1/2배를 www.acmicpc.net 👨🏻💻 코드 ( Solution ) class Pet: def __init__(self, o, w): self.proper_weight = o self.real_weight = w self.status = ":-(" def check_status(self): if self.proper_weight * 0.5 < self.real_weight < self.proper_weight * 2: self.status = "..

코딩 1일 1문제! 오늘의 문제는 백준의 이진수 덧셈 입니다. 2729번: 이진수 덧셈 이진수 덧셈은 매우 간단하고, 십진수 덧셈과 비슷하게 하면 된다. 십진수 덧셈을 할 때는, 오른쪽부터 왼쪽으로 차례대로 숫자 하나씩 더하면 된다. 이진수 덧셈도 이와 비슷하게 하면 된다. 십 www.acmicpc.net 👨🏻💻 문제 풀이 이진수를 입력 받아 이를 다시 정수로 바꾼 뒤에 int_a, int_b = int(bin_a, 2), int(bin_b, 2) 그 값을 합하고 answer = bin(int_a + int_b)[2:] 그 한한 값을 다시 이진수로 바꾸어주었습니다. answer_list.append(answer) 👨🏻💻 코드 ( Solution ) def bin_sum(N, bin_list): ans..

코딩 1일 1문제! 오늘의 문제는 희주의 수학시험 입니다. 8974번: 희주의 수학시험 강민이 동생 희주는 올해 초등학교에 입학했다. 며칠 있으면, 생애 첫 시험을 보게 될텐데, 수학시험도 같이 본다고 한다. 희주는 겁을 먹은 나머지, 열심히 준비해야겠다고 생각했다. 이를 www.acmicpc.net 👨🏻💻 코드 ( Solution ) def heeju_math_test(A, B): number_list = [] number = 1 while True: if len(number_list) >= B: break number_list += [number] * number number += 1 return sum(number_list[A-1:B]) if __name__ == "__main__": A, B =..

코딩 1일 1문제! 오늘의 문제는 백준의 뉴비의 기준은 뭘까? 입니다. 19944번: 뉴비의 기준은 뭘까? 2020 INPC는 IGRUS 뉴비들을 위해 열리는 대회입니다. 하지만 영수 할아버지나 인용 할아버지와 같이 14학번이지만 마음만은 뉴비인 어르신들 때문에 대회장이 TLE들의 파티가 되자 뉴비의 기준을 정 www.acmicpc.net 👨🏻💻 코드 ( Solution ) def newbie(N, M): answer = "TLE!" if M 2 and M

코딩 1일 1문제! 오늘의 문제는 백준의 최대공약수 입니다. 1850번: 최대공약수 모든 자리가 1로만 이루어져있는 두 자연수 A와 B가 주어진다. 이때, A와 B의 최대 공약수를 구하는 프로그램을 작성하시오. 예를 들어, A가 111이고, B가 1111인 경우에 A와 B의 최대공약수는 1이고, A www.acmicpc.net 👨🏻💻 문제 풀이 1로만 이루어진 수라고 하길래 이진수로 바꿔 푸는 문제인가? 싶어 그렇게 풀었었는데 알고보니 그냥 최대공약수를 구하고 이 값만큼 1을 쓰면 되는 문제였습니다. 👨🏻💻 코드 ( Solution ) def gcd(a, b): mod = a%b while mod > 0: a = b b = mod mod = a%b return b def greatest_common_..

코딩 1일 1문제! 오늘의 문제는 백준의 자동완성 입니다. 24883번: 자동완성 D2는 For Developers, By Developers의 약자로, 개발자들을 위해 개발자들이 직접 만들어 가고 있는 네이버 개발자 지원 프로그램입니다. 네이버가 축적한 기술과 지식을 공유하고, 외부 개발자들을 지원 www.acmicpc.net 👨🏻💻 코드 ( Solution ) def autocomplete(alpha): answer = "Naver D2" if alpha not in {"N", "n"}: answer = "Naver Whale" return answer if __name__ == "__main__": alpha = input() print(autocomplete(alpha)) GitHub - SOM..

코딩 1일 1문제! 오늘의 문제는 백준의 영수증 입니다. 25304번: 영수증 준원이는 저번 주에 살면서 처음으로 코스트코를 가 봤다. 정말 멋졌다. 그런데, 몇 개 담지도 않았는데 수상하게 높은 금액이 나오는 것이다! 준원이는 영수증을 보면서 정확하게 계산된 것 www.acmicpc.net 👨🏻💻 코드 ( Solution ) def calculate(value): return value[0] * value[1] def receipt(X, receipt_list): answer = "No" calculate_value = sum([calculate(value) for value in receipt_list]) if X == calculate_value: answer = "Yes" return answe..

코딩 1일 1문제! 오늘의 문제는 백준의 다음수 입니다. 4880번: 다음수 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 수열의 연속하는 세 정수 a1, a2, a3이 한 줄에 주어진다. (-10,000 < a1, a2, a3 < 10,000) a1, a2, a3은 서로 같지 않다. 입력의 마지막 www.acmicpc.net 👨🏻💻 문제 풀이 입력 받은 숫자 리스트가 등차 수열이면 AP 와 함께 다음 수 등비 수열이면 GP 와 함께 다음 수 를 출력합니다. 각 숫자 사이의 비율이 같으면 등차 수열 그렇지 않으면 등비 수열로 판단하고 등차 수열일 경우 세번째 수 + 두번째 수 - 첫번째 수 등비 수열일 경우 세번째 수 + 두번째 수 // 첫번째 수 를 정답으로 합니다. 👨🏻💻 ..

코딩 1일 1문제! 오늘의 문제는 백준의 약수 구하기 입니다. 2501번: 약수 구하기 첫째 줄에 N과 K가 빈칸을 사이에 두고 주어진다. N은 1 이상 10,000 이하이다. K는 1 이상 N 이하이다. www.acmicpc.net 👨🏻💻 코드 ( Solution ) def find_a_factor(N, K): answer = 0 cnt = 0 for num in range(1, N+1): if N % num == 0: cnt += 1 if cnt == K: answer = num break return answer if __name__ == "__main__": N, K = map(int, input().split()) print(find_a_factor(N, K)) GitHub - SOMJANG/..

코딩 1일 1문제! 오늘의 문제는 백준의 배수 찾기 입니다. 4504번: 배수 찾기 첫째 줄에 n이 주어진다. 다음 줄부터 한 줄에 한 개씩 목록에 들어있는 수가 주어진다. 이 수는 0보다 크고, 10,000보다 작다. 목록은 0으로 끝난다. www.acmicpc.net 👨🏻💻 코드 ( Solution ) def is_baesu(number, n): return number % n == 0 def find_baesu(number, n): if is_baesu(number, n): answer = f"{number} is a multiple of {n}." else: answer = f"{number} is NOT a multiple of {n}." return answer if __name__ == "..

코딩 1일 1문제! 오늘의 문제는 백준의 대표값 입니다. 2592번: 대표값 어떤 수들이 있을 때, 그 수들을 대표하는 값으로 가장 흔하게 쓰이는 것은 평균이다. 평균은 주어진 모든 수의 합을 수의 개수로 나눈 것이다. 예를 들어 10, 40, 30, 60, 30, 20, 60, 30, 40, 50의 평균은 www.acmicpc.net 👨🏻💻 문제 풀이 이 문제는 10개의 자연수가 주어졌을때 그 10개 숫자의 평균값과 가장 많이 등장하는 수 ( 최빈값) 를 구하는 문제입니다. 평균의 경우 def calcuate_avg_num(numbers): return sum(numbers) // len(numbers) 10개 숫자의 합을 10으로 나눈 값으로 구하였습니다. 최빈값의 경우 from collection..

코딩 1일 1문제! 오늘의 문제는 백준의 버그왕 입니다. 3447번: 버그왕 입력은 여러 줄의 소스 코드로 이루어져 있다. 이 소스 코드는 백준이가 작성한 버그를 찾는 프로그램으로 이미 처리가 되어있다. 각 줄은 100글자 이내이고, 입력은 파일이 끝날 때 끝난다. 줄의 www.acmicpc.net 👨🏻💻 코드 ( Solution ) import sys import re def remove_bug(code): while True: code = re.sub(r'BUG', '', code) if 'BUG' not in code: break return code def bug_king(code_lines): for code in code_lines: remove_bug_code = remove_bug(cod..

코딩 1일 1문제! 오늘의 문제는 백준의 피보나치 수 4 입니다. 10826번: 피보나치 수 4 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가 www.acmicpc.net 👨🏻💻 코드 ( Solution ) def fibo_4(n): fibo_numbers = [0, 1, 1] if n > 2: for idx in range(n-2): new_fibo_num = fibo_numbers[idx+1] + fibo_numbers[idx+2] fibo_numbers.append(new_fibo_num) return fibo_numbe..

코딩 1일 1문제! 오늘의 문제는 백준의 치킨 두마리 (...) 입니다. 14489번: 치킨 두 마리 (...) 첫째 줄에 두 통장의 잔고 A와 B가 주어진다. (0 ≤ A, B ≤ 1,000,000,000) 둘째 줄에 치킨 한 마리의 가격 C가 주어진다. (0 ≤ C ≤ 1,000,000,001) www.acmicpc.net 👨🏻💻 문제 풀이 기본적으로 두 통장 잔고의 합을 정답으로 합니다. # A == 통장잔고 1 # B == 통장잔고 2 answer = A + B 거기서 만약 두 통장 잔고의 합이 치킨 두마리보다 많을 경우 치킨 두 마리 금액을 빼줍니다. if A + B >= C * 2: answer -= C * 2 👨🏻💻 코드 ( Solution ) def chicken(A, B, C): an..

코딩 1일 1문제! 오늘의 문제는 백준의 네 번째 수 입니다. 2997번: 네 번째 수 첫째 줄에 상근이가 고른 4개의 수 중 3개가 주어진다. 이 수는 크기 순이 아닐 수도 있고, -100보다 크거나 같고, 100보다 작거나 같은 정수이다. www.acmicpc.net 👨🏻💻 문제 풀이 1. 입력 받은 숫자 리스트를 정렬 합니다. sorted_numbers = sorted(numbers) 2. 정렬한 리스트에서 첫번째 숫자와 두번째 숫자의 차이 ( diff_1 ) 두번째 숫자와 세번째 숫자의 차이 ( diff_2 ) 를 구합니다. diff_1 = sorted_numbers[1] - sorted_numbers[0] diff_2 = sorted_numbers[2] - sorted_numbers[1] 3...

코딩 1일 1문제! 오늘의 문제는 백준의 피보나치 수 5 입니다. 10870번: 피보나치 수 5 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가 www.acmicpc.net 👨🏻💻 코드 ( Solution ) def fibo_5(n): fibo_numbers = [0, 1, 1] if n > 2: for idx in range(n-2): new_fibo_num = fibo_numbers[idx+1] + fibo_numbers[idx+2] fibo_numbers.append(new_fibo_num) return fibo_numbe..

코딩 1일 1문제! 오늘의 문제는 백준의 가희와 방어율 무시 입니다. 25238번: 가희와 방어율 무시 메이플스토리 몬스터는 방어율 수치가 있습니다. 이 방어율 수치의 일정 %를 무시하는 것을 방무라고 합니다. 유저는 아이템을 사거나, 특정한 스킬 레벨을 올려서 방무 수치를 올릴 수 있습니 www.acmicpc.net 👨🏻💻 코드 ( Solution ) def defense_rate(a, b): return a - a * b / 100 def is_lower_rate(d_rate): is_lower = 0 if d_rate < 100: is_lower = 1 return is_lower if __name__ == "__main__": a, b = map(int, input().split()) d_rat..