Algorithm (4) 썸네일형 리스트형 [JAVA] 백준 알고리즘 10872번 팩토리얼 www.acmicpc.net/problem/10872 10872번: 팩토리얼 0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오. www.acmicpc.net 팩토리얼(Factorial)이란 N이라는 자연수가 있을때 1부터 N까지 자연수의 곱을 의미한다. 표현은 N!으로 한다. 예를 들어 6!은 1*2*3*4*5*6이므로 720이 나오게 된다. import java.util.*; class Main{ public static void main(String args[]){ Scanner sc = new Scanner(System.in); int a = sc.nextInt(); int result = a; if(a > 0){ for(int i = a-1; i > 0; i--.. [JAVA] 알고리즘 소수 판별 어제 포스트한 소인수분해에서 나온 소수란 무엇일까. 소수란 저번 글에서도 설명했지만 약수로 1과 자기자신만을 가지는 수를 의미한다. 많이 알려진 소수로는 2, 3, 5, 7, 11, 13, 17 등이 있다. 위와같이 몇몇가지 경우는 외워서 판별할 수는 있지만 큰 수가 소수인지 판별하기는 어렵다. 이러한 상황에서 쓸 수 있게 소수를 판별하는 알고리즘을 짜보자. import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int num = sc.nextInt(); if (isPrime(num)) { System.out.println("Input nu.. [JAVA] 백준 알고리즘 11653번 소인수 분해 www.acmicpc.net/problem/11653 11653번: 소인수분해 첫째 줄에 정수 N (1 ≤ N ≤ 10,000,000)이 주어진다. www.acmicpc.net 소수는 약수로 1과 자기 자신만을 가지는 수를 소수라 한다. 예를 들어 자연수 N이 있다고 하자. N의 약수는 1과 N밖에 없을때 자연수 N을 소수라 한다. 특정한 수를 소인수분해 한다는 것은 위와 같은 소수들의 조합으로 수를 나타내는 것을 뜻한다. 108을 예시로 들면 108은 2^2*17로 나타낼수 있는데 이것을 소인수분해라 한다. 이러한 소인수분해 알고리즘을 짜게되면 이런식으로 된다. import java.util.Scanner; public class Main { public static void main(String[] .. [JAVA] 백준 알고리즘 10870번 피보나치 수열 www.acmicpc.net/problem/10870 10870번: 피보나치 수 5 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n>=2)가 �� www.acmicpc.net 피보나치 수열은 문제에도 나와있듯 2번째 수 부터 그 앞에 있는 두 수의 합이 되는 형태로 수열 값은 0, 1, 1, 2, 3, 5, 8, 13, 21 … 로 나타난다. 해결 방법을 모를 때는 변수 두개를 선언하여 이전 값을 저장하는 식으로 알고리즘을 짜려했지만 잘 되지 않았다. 여러 방법을 생각해보다 이곳저곳 찾아보다 발견한 방법은 재귀함수를 사용하는 것이다. 재귀함.. 이전 1 다음