Problem 문제링크: www.acmicpc.net/problem/2231 알고리즘 : 브루트포스 입력 - N(1 ≤ N ≤ 1000000) 출력 - 가장 작은 생성자 solution 1부터 N 까지 탐색을 하는 방법도 있지만 N - 9(각 자릿수가 가질수 있는 최댓값) * 자릿수 부터 N 까지만 조사하는 방법이 더욱 빠르다. N = int(input()) start = max(N - (len(str(N)) * 9), 0) result = 0 for i in range(start, N+1): case = i + sum(list(map(int, str(i)))) if case == N: result = i break print(result)
Problem 문제링크: www.acmicpc.net/problem/6603 6603번: 로또 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있다. 첫 번째 수는 k (6 < k < 13)이고, 다음 k개 수는 집합 S에 포함되는 수이다. S의 원소는 오름차순으로 www.acmicpc.net 알고리즘 분류: 수학, 조합론, 백트래킹, 재귀 Solution 이 문제는 하나의 집합(N) 속에서 6개의 숫자로 이루어진 모든 조합을 구하는 문제이다. python 의 "itertools" 라이브러리에서 지원하는 *combinations 함수를 사용하면 쉽게 구할 수 있다. Code import itertools while 1: N = list(map(int, input()..
www.acmicpc.net/problem/1002 각각 위치로부터 마린으로 까지의 위치를 반지름으로 한 원을 그리고 교점의 개수로 마린이 있을 수 있는 지점의 개수를 센다 T = int(input()) for i_ in range(T): x1, y1, r1, x2, y2, r2 = map(int, input().split()) d = ((x2 - x1) ** 2 + (y2 - y1) ** 2) ** 0.5 rm = abs(r1 - r2) if d == 0 and r1 == r2: print(-1) elif d == rm or d == r1 + r2: print(1) elif rm < d < r1 + r2: print(2) else: print(0)
- Total
- Today
- Yesterday
- 나머지
- 스택
- openCV
- python
- 2
- FIBO
- boj
- forensic
- 괄호
- math
- 프로그레머스
- c++
- 피보나치
- 직업군 추천
- 꿀따기
- 더하기
- 파이썬
- 백준
- 21758
- HackCTF
- 1
- 👼
- 넓이
- 다익스트라
- programmers
- 4
- 카카오 2021 블라인드 테스트
- web
- 7567
- 쇠막대기
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |