본문 바로가기
반응형

백준알고리즘/정수론 및 조합론14

(Python/🥈1)백준리즘알고리즘 20592번: 가장 가까운 세 사람의 심리적 거리 문제 바로가기  문제:ChatGPT 여러분은 요즘 유행하는 심리검사인 MBTI에 대해 들어보았는가? MBTI(Myers-Briggs Type Indicator)는 C.G.Jung의 심리유형론을 근거로 하여 Katharine Cook Briggs와 Isabel Briggs Myers가 보다 쉽고 일상생활에 유용하게 활용할 수 있도록 고안한 자기보고식 성격유형지표이다. (출처: 위키백과) MBTI는 아래와 같이 네 가지 척도로 사람들의 성격을 구분한다. 외향(E) / 내향(I) 감각(S) / 직관(N) 사고(T) / 감정(F) 판단(J) / 인식(P) 각 척도마다 두 가지 분류가 존재하므로,MBTI는 총 2^4 = 16가지 유형이 있음을 알 수 있다. 일반적으로 MBTI의 유형들은 각 분류를 나타내는 알파벳.. 2024. 5. 27.
(Python/🥈4)백준 알고리즘 9613번: GCD 합 문제 바로가기 문제: 양의 정수 n개가 주어졌을 때, 가능한 모든 쌍의 GCD의 합을 구하는 프로그램을 작성하시오. 입력: 첫째 줄에 테스트 케이스의 개수 t (1 ≤ t ≤ 100)이 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있다. 각 테스트 케이스는 수의 개수 n (1 < n ≤ 100)가 주어지고, 다음에는 n개의 수가 주어진다. 입력으로 주어지는 수는 1,000,000을 넘지 않는다. 출력: 각 테스트 케이스마다 가능한 모든 쌍의 GCD의 합을 출력한다. 풀이: import math import sys from itertools import combinations sys.stdin = open('/Users/song/Desktop/Python/Python/h.txt', 'r') T = in.. 2023. 9. 4.
(Python/🥈2)백준 알고리즘 2004번: 조합 0의 개수 문제 출처:https://www.acmicpc.net/problem/2004 2004번: 조합 0의 개수 첫째 줄에 정수 $n$, $m$ ($0 \le m \le n \le 2,000,000,000$, $n \ne 0$)이 들어온다. www.acmicpc.net 풀이: import sys from math import factorial n, m = map(int, input().split()) res = factorial(n) // (factorial(m) * factorial(n - m)) res_list = list(map(int,str(res))) res_list.reverse() count = 0 for i in res_list: if i == 0: count += 1 if i != 0: brea.. 2022. 6. 2.
(Python/🥈5)백준알고리즘 1676번: 팩토리얼 0의 개수 문제 출처:https://www.acmicpc.net/problem/1676 1676번: 팩토리얼 0의 개수 N!에서 뒤에서부터 처음 0이 아닌 숫자가 나올 때까지 0의 개수를 구하는 프로그램을 작성하시오. www.acmicpc.net 풀이: import sys input = sys.stdin.readline import math # fac_a = math.factorial(int(input())) # list_fac_a = list(map(int,str(fac_a))) list_fac_a = list(map(int,str(math.factorial(int(input())))))# 위에 두줄을 한줄로 표헌 list_fac_a.reverse() res = 0 for i in list_fac_a: if i .. 2022. 6. 1.
(Python/🥈3)백준 알고리즘 9375번: 패션왕 신해빈 문제 출처:https://www.acmicpc.net/problem/9375 9375번: 패션왕 신해빈 첫 번째 테스트 케이스는 headgear에 해당하는 의상이 hat, turban이며 eyewear에 해당하는 의상이 sunglasses이므로 (hat), (turban), (sunglasses), (hat,sunglasses), (turban,sunglasses)로 총 5가지 이다. www.acmicpc.net 풀이: from collections import Counter t = int(input()) for i in range(t): n = int(input()) s = [] # 리스트 생성 for j in range(n): a, b = input().split() s.append(b) num = .. 2022. 6. 1.
(Python/🥈5)백준 알고리즘 1010번: 다리놓기 문제 출처:https://www.acmicpc.net/problem/1010 1010번: 다리 놓기 입력의 첫 줄에는 테스트 케이스의 개수 T가 주어진다. 그 다음 줄부터 각각의 테스트케이스에 대해 강의 서쪽과 동쪽에 있는 사이트의 개수 정수 N, M (0 < N ≤ M < 30)이 주어진다. www.acmicpc.net 풀이: def factorial(n): num = 1 for i in range(1, n+1): num *= i return num T = int(input()) for _ in range(T): n, m = map(int, input().split()) res = factorial(m) // (factorial(n) * factorial(m - n)) print(res) 이 전 문제들.. 2022. 5. 31.
반응형