본문 바로가기

전체 글14

1010번 백준 https://www.acmicpc.net/problem/1010 1010번: 다리 놓기 입력의 첫 줄에는 테스트 케이스의 개수 T가 주어진다. 그 다음 줄부터 각각의 테스트케이스에 대해 강의 서쪽과 동쪽에 있는 사이트의 개수 정수 N, M (0 < N ≤ M < 30)이 주어진다. www.acmicpc.net from sys import stdin for t in range(int(stdin.readline())): k, n = map(int, stdin.readline().split(' ')) ans = 1 for i in range(1, k+1): ans *= n-i+1 ans //= i print(ans) 실생활에서 적용하여 설명하기 귀찮다 전단사 함수(일대일 함수) f(x)가 주어질 때, a <.. 2021. 10. 10.
1003번 백준 https://www.acmicpc.net/problem/1003 1003번: 피보나치 함수 각 테스트 케이스마다 0이 출력되는 횟수와 1이 출력되는 횟수를 공백으로 구분해서 출력한다. www.acmicpc.net from sys import stdin for t in range(int(stdin.readline())): n = int(stdin.readline()) if not n: print(1, 0) else: l1, l2 = 0, 1 for _ in range(n-1): l1, l2 = l2, l1+l2 print(l1, l2) 피보나치 함수를 전개할 때 fib(0) 또는 fib(1)의 개수를 구하는 문제이다. (단, fib(x)는 x에 대한 피보나치 함수) 피보나치 수열은 DP(다이나믹 프로그래.. 2021. 10. 10.
1002번 백준 https://www.acmicpc.net/problem/1002 1002번: 터렛 각 테스트 케이스마다 류재명이 있을 수 있는 위치의 수를 출력한다. 만약 류재명이 있을 수 있는 위치의 개수가 무한대일 경우에는 -1을 출력한다. www.acmicpc.net t = int(input()) for _ in range(t): x1, y1, r1, x2, y2, r2 = map(int, list(input().split())) if x1 == x2 and y1 == y2 and r1 == r2: print(-1) continue distance = (x2-x1)**2 + (y2-y1)**2 if (r1 + r2) ** 2 distance: print(0).. 2021. 10. 7.
5376번 백준 https://www.acmicpc.net/problem/5376 5376번: 소수를 분수로 유리수 분수를 소수로 나타내면, 소수점 아래 자리가 유한 개인 경우(1/8 = 0.125)와 어떤 자리에서부터 일정한 숫자가 한없이 되풀이 되는 경우(1/11 = 0.090909...)가 있다. 소수를 입력받은 뒤, 분수로 www.acmicpc.net from sys import stdin from math import gcd # 아 킹받네 gcd 함수가 있었다고?; # 0이면 1로 바꿔주는 함수 def zto1(i): return i if i else 1 for _ in range(int(stdin.readline())): num = stdin.readline() nr_digits, re_digits = 0, .. 2021. 10. 7.