정수론(4)
-
[백준][C++] 이항계수 구하기 1~4 (정수론- 페르마 소정리, 확장 유클리드, 뤼카의 정리)
1. 11050 11050번: 이항 계수 1 (acmicpc.net) 파스칼 삼각형을 사용해 문제를 해결 하였다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 #include using namespace std; int cache[11][12]; void initial() { for(int i = 0; i N>>K; initial(); coutK; initial(); cout 임의의 원소a와 임의의 연산?에 대해 a?x = a 이 되게하는 x ) (역원 => 임의의 원소 a와 임의의 연산 ?에 대해 a?x = 0 이 되게하는 x ) 어떤 수를 a로 나눈다 == 어떤 수를 a의 곱셈에 대한 역원과 곱한다 => 만약 a의 곱셈에 대한 역원이 존재하지 않으면..
2021.06.26 -
[정수론] POTION 마법의 약
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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 #include #include #include #include #include using namespace std; int T, n; int r[200]; int p[200]; vector ratio; int add[200]; void potion() { if(ratio.back()
2021.01.24 -
[정수론] PASS486 비밀번호 456
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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 #include #include #include #include using namespace std; const int MAX_N = 10000001; int minfac[MAX_N]; int testCase, n, lo, hi; void era() { for(int i = 2; i testCase; for(int i = 0; i >n>>lo>>..
2021.01.24 -
[정수론] [정리 필요]number theory
소수(prime number) 소수는 양의 약수가 1과 자기 자신 두 개 뿐인 자연수를 의미한다. 소수의 반대: 합성수(composite number): 세 개 이상의 양의 약수를 갖는 자연수 가장 단순한 소수판별: 2 부터 n -1 까지 모든 수를 순회, n의 약수가 있는지 확인 (합성수의 성질에 따라 sqrt(n)이하 까지 순회하도록 최적화 가능) (비트 수에 따라 수행시간이 증가 => 비트 수가 하나 증가 => 수행시간 두배 => 지수시간) (1, 2, 3 제외 한 모든 소수는 6k +- 1 형태임을 이용할 수 도 있다.) (2 를 제외하면 모든 짝수는 소수가 아니다.) 1 2 3 4 5 6 7 8 9 10 bool isPrime(int n) { if(n
2021.01.23