본문 바로가기
반응형

기초수학7

순열(Permutation), 팩토리얼(Factorial) 순열 순서를 정해서 나열, 서로 다른 n개 중 r개를 선택하는 경우의 수 (순서O, 중복 X) ex ) 5명을 3줄로 세우기, 서로 다른 4명 중 반장, 부반장 뽑기 System.out.println("== 순열 =="); // 5명을 3줄로 세우는 경우의 수 n = 5; int r = 3; result = 1; for (int i = n; i >= n - r + 1 ; i--) { result *= i; } System.out.println("결과: " + result); 팩토리얼(Factorial) : 1~n까지 모든 자연수의 곱(n!) n! = n(n-1)(n-2)...1 ex) 1! = 1 2! = 1 x 2 System.out.println("== 팩토리얼 =="); // 5! int n = 5.. 2024. 2. 27.
경우의 수 (합의 법칙, 곱의 법칙) 경우의 수 어떤 사건에서 일어날 수 있는 경우의 가짓수. - 사건 A가 일어날 경우의 수 n(A) 합의 법칙 - A 또는 B가 일어날 경우의 수 - n(A∪B) - n(A∪B) = n(A) + n(B) - n(A∩B) // 두 개의 주사위를 던졌을 때 합이 3 또는 4의 배수일 경우의 수 int[] dice1 = {1, 2, 3, 4, 5, 6}; int[] dice2 = {1, 2, 3, 4, 5, 6}; int nA = 0; //3의 배수 int nB = 0; //4의 배수 int nAandB = 0; // 기본 풀이 for (int item1 : dice1) { for (int item2 : dice2) { if ((item1 + item2) % 3 == 0) { nA += 1; } if ((ite.. 2024. 2. 26.
집합(Set)이란? 집합(Set) 특정 조건에 맞는 원소들의 모임으로, 표현 방법으로는 원소나열법, 조건제시법, 벤다이어그램이 있다. java에서 집합 사용시 HashSet을 이용한다. HashSet set1 = new HashSet(); set1.add(1); //값 추가 set1.add(1); set1.add(1); //중복은 하나만 들어감. set1.add(2); set1.add(3); set1.remove(1); //값 제거 set1.size(); // 크기 set1.contains(2); // 값 포함 여부 원소나열법 A = {1, 2, 3, 4, 5} 조건제시법 A = {A|A는 정수, 1 2024. 2. 26.