[JAVA] 백준-1874 스택 수열
·
알고리즘
문제https://www.acmicpc.net/problem/1874스택을 이용하여 문제를 풀 수 있다.배열을 통해 스택을 구현하여 푸는 방법과 스택 클래스를 이용하는 방법을 제시하겠다.만약 스택이 잘 이해되지 않는다면 이곳에 자세하게 설명되어 있으니 꼭 보고 오길 바랍니다. 기본적으로 풀 방법으로는 실제로 스택을 이용하여 직접 입력된 값이 가능한지 일일이 넣었다 빼는 방식이다. 값이 입력되면 스택에 입력된 숫자까지 순차적으로 저장한 뒤에그 입력된 값을 뺀다.그 후에 입력된 값이 스택의 끝부분과 맞지 않다면 뺄 수 없기 때문에 NO를 출력한다.예제 2번을 예로 들어 보자면1이 입력되었으니 1을 push한뒤에  1을 pop 한다..2가 입력되었으니 2를 push한뒤에  2를 pop 한다.5가 입력되었으니 ..
[Java] 소수 찾기 - 에라토스테네스의 체
·
알고리즘
[Java] 소수 찾기 - 에라토스테네스의 체에라토스테네스의 체는 에라토스테네스가 만들어 낸 소수를 찾는 방법이다이 방법은 마치 체로 치듯이 수를 걸러낸다고 하여 '에라토스테네스의 체'라고 부른다.2부터 시작하여 자기 자신을 제외한 배수를 제거하며 소수를 찾는다.  특정한 범위에 있는 소수를 찾을때 효율적인 방법이다.다만 주어진 수가 소수인지를 판별할때는 더 효율적인 방법(밀러-라빈 소수 판별 알고리즘)이 있으므로 특정한 범위에 있는 소수를 찾을때만 사용하도록 해야한다. 첫번째 for문에서 i*ipublic class Main { public static void main(String[] args) { int N=100; //N까지의 소수 int[] a= new int[N+1]; for(int ..
[JAVA] 백준-1676 팩토리얼 0의 개수
·
알고리즘
https://www.acmicpc.net/problem/1676 문제    N!에서 뒤에서 부터 0이 아닌 숫자가 나올때 까지 0의 개수를 새는 문제이다.예를들어 10!은 3628800이므로 0이 2개이다.내가 처음 생각한 방법과 그후 찾은 더 효울적인 방법을 작성하겠다. 뒷자리가 0이 나오는 경우는 곱하기 10을 했을 경우이다. 즉 2와 5가 곱했을 경우를 뜻한다.따라서 다음의 코드는 1부터 n까지의 수들의 약수들 중에 2와 5가 있는 경우를 센뒤에 10이 되려면 2와 5 둘다 있어야 하므로 count_2와 count_5중 작은 수를 출력하는 방법이다. import java.util.Scanner;public class Main { public static void main(String[] args)..
개발자가되고픈
'java' 태그의 글 목록