문제 골드바흐의 추측: 2보다 큰 짝수는 두 소수의 합으로 나타낼 수 있다. 짝수 N을 두 소수의 합으로 나타내는 표현을 골드바흐 파티션이라고 한다. 짝수 N이 주어졌을 때, 골드바흐 파티션의 개수를 구해보자. 두 소수의 순서만 다른 것은 같은 파티션이다. 입력 첫째 줄에 테스트 케이스의 개수 T (1 ≤ T ≤ 100)가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있고, 정수 N은 짝수이고, 2
문제 정수 N이 주어졌을 때, 소인수분해하는 프로그램을 작성하시오. 입력 첫째 줄에 정수 N (1 ≤ N ≤ 10,000,000)이 주어진다. 출력 N의 소인수분해 결과를 한 줄에 하나씩 오름차순으로 출력한다. N이 1인 경우 아무것도 출력하지 않는다. 풀이 이전 글에 적은 문장에 덧붙여, 소인수분해에도 왕도가 없다. 해서 아무렇게나 짜도 괜찮겠지~ 하고 코드를 짜다가 세 시간 정도를 날리고 두 번 정도 코드를 근본적으로 갈아엎었다. 로직은 단순한데 시간초과에 자꾸 걸려서 일단 스트림과 리스트를 버리고, AKS 알고리즘을 구현해 보려다 실패하고, 리만 함수에 대해 읽다가 정신을 차렸다. 해서 간단하게 에라토스테네스의 체를 이용해 순회하면서 소인수가 나오면 그때그때 출력하도록 만들었다. 2부터 시작해서 더..
문제 주어진 수 N개 중에서 소수가 몇 개인지 찾아서 출력하는 프로그램을 작성하시오. 입력 첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다. 출력 주어진 수들 중 소수의 개수를 출력한다. 풀이 스트림에 에라토스테네스의 체를 더해 풀어봤다. 주어진 숫자를 리스트로 받은 뒤 스트림을 열고, 그 안에서 다시 IntStream을 열어 2부터 √a 까지 순회하며 해당 순번의 숫자를 나눈 나머지가 0인 숫자를 필터링, 개수를 세어 출력했다. 시간이 너무 오래 걸리면 어쩌나 걱정했는데 스트림이 생각보다 느리지 않은 덕분인지 에라토스테네스의 체가 없이도 통과하기는 했다. import java.util.ArrayList; import java.u..
문제 M이상 N이하의 소수를 모두 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 자연수 M과 N이 빈칸을 사이에 두고 주어진다(1 ≤ M ≤ N ≤ 1,000,000). M이상 N이하의 소수가 하나 이상 있는 입력만 주어진다. 출력 한 줄에 하나씩, 증가하는 순서대로 소수를 출력한다. 풀이 이중으로 스트림을 이용해서 간단하게 풀었다. 반복해서 사용하다 보니 스트림에 조금은 익숙해지는 기분이 든다. import java.util.Scanner; import java.util.stream.IntStream; public class Prob1929Stream { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int ..
문제 주어진 수 N개 중에서 소수가 몇 개인지 찾아서 출력하는 프로그램을 작성하시오. 입력 첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다. 출력 주어진 수들 중 소수의 개수를 출력한다. 풀이 입력 값으로 리스트를 생성한 다음 스트림을 이중으로 사용해서 소수를 판별했다. 소수 판별법에 따라 연산 속도를 위해 1부터 √a 까지만 순회하도록 했다. import java.util.ArrayList; import java.util.List; import java.util.Scanner; import java.util.stream.IntStream; public class Prob1978Stream { public static void m..
- Total
- Today
- Yesterday
- a6000
- 여행
- 세계일주
- 면접 준비
- 세모
- 유럽여행
- BOJ
- Algorithm
- java
- 남미
- 파이썬
- RX100M5
- 칼이사
- 맛집
- 유럽
- Python
- 동적계획법
- spring
- Backjoon
- 중남미
- 스트림
- 자바
- 알고리즘
- 기술면접
- 지지
- 리스트
- 야경
- 스프링
- 세계여행
- 백준
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |