본문 바로가기

Computer Science/Algorithm28

[백준] 2108 - 통계학 (Java) https://st-lab.tistory.com/108?category=857114 [백준] 2108번 : 통계학 - JAVA [자바] www.acmicpc.net/problem/2108 2108번: 통계학 첫째 줄에 수의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 그 다음 N개의 줄에는 정수들이 주어진다. 입력되는 정수의 절댓값은 4,000을 넘지 않는다. www.acmicpc.net.. st-lab.tistory.com *해당 포스팅은 상단에 링크된 포스팅을 바탕으로 개인 공부 목적을 위해 작성되었으므로 자세한 내용은 위 링크를 확인해 주시기 바랍니다. 여기서도 그냥 Arrays.sort()를 썼었는데 역시나 선생님은 시간 복잡도를 고려해서 카운팅 정렬을 쓰셨다. O(n)과 O(nlogn)은.. 2022. 9. 22.
[백준] 10989 - 수 정렬하기 3 (Java) https://st-lab.tistory.com/107?category=857114 [백준] 10989번 : 수 정렬하기 3 - JAVA [자바] www.acmicpc.net/problem/10989 10989번: 수 정렬하기 3 첫째 줄에 수의 개수 N(1 ≤ N ≤ 10,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 숫자가 주어진다. 이 수는 10,000보다 작거나 같은 자연수이다. ww.. st-lab.tistory.com *해당 포스팅은 상단에 링크된 포스팅을 바탕으로 개인 공부 목적을 위해 작성되었으므로 자세한 내용은 위 링크를 확인해 주시기 바랍니다. 제출 코드 (통과는 함) import java.io.BufferedReader; import java.io.IOException; im.. 2022. 9. 21.
[백준] 2751 - 수 정렬하기 2 (Java) https://st-lab.tistory.com/106?category=857114 [백준] 2751번 : 수 정렬하기 2 - JAVA [자바] www.acmicpc.net/problem/2751 2751번: 수 정렬하기 2 첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 숫자가 주어진다. 이 수는 절댓값이 1,000,000보다 작거나 같은 정수이.. st-lab.tistory.com *해당 포스팅은 상단에 링크된 포스팅을 바탕으로 개인 공부 목적을 위해 작성되었으므로 자세한 내용은 위 링크를 확인해 주시기 바랍니다. 역시나 선생님이 예상하신대로 나는 Arrays.sort를 썼지만 dual-pivot Quicksort에서 평균 시간 복잡도가 O(nlon.. 2022. 9. 21.
[백준] 2750 - 수 정렬하기 (Java) [백준] 2750번 : 수 정렬하기 - JAVA [자바] www.acmicpc.net/problem/2750 2750번: 수 정렬하기 첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 숫자가 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다. 수는 st-lab.tistory.com *해당 포스팅은 상단에 링크된 포스팅을 바탕으로 개인 공부 목적을 위해 작성되었으므로 자세한 내용은 위 링크를 확인해 주시기 바랍니다. 1. 선택정렬 첫 번째 인덱스부터 시작해서 뒤의 인덱스들과 값을 비교하여 최소값들을 앞 순서로 보내는 방법. 시간 복잡도는 O(n²)이다. import java.io.BufferedReader; import java.io.IOExcepti.. 2022. 9. 21.
[백준] 9020 - 골드바흐의 추측 (Java) [백준] 9020번 : 골드바흐의 추측 - JAVA [자바] https://www.acmicpc.net/problem/9020 9020번: 골드바흐의 추측 문제 1보다 큰 자연수 중에서 1과 자기 자신을 제외한 약수가 없는 자연수를 소수라고 한다. 예를 들어, 5는 1과 5를 제외한 약수가 없기 때 st-lab.tistory.com *해당 포스팅은 상단에 링크된 포스팅을 바탕으로 개인 공부 목적을 위해 작성되었으므로 자세한 내용은 위 링크를 확인해 주시기 바랍니다. 선생님(모르는 제자가 하나 생기신)이 저번에 알려주신 골드바흐의 추측이 문제로 나왔다. 댓글에 나랑 비슷하게 생각하신 분이 계셨다. 진짜 나는 여기서 한 번 더 배워간다. 선생님은 천재다. import java.io.BufferedReade.. 2022. 9. 20.
[백준] 2581 - 소수 (Java) 에라토스테네스의 체 에라토스테네스가 발견한 소수를 찾는 방법! 2부터 소수를 구하고자 하는 구간의 모든 수를 나열한다. 그림에서 회색 사각형으로 두른 수들이 여기에 해당한다. 2는 소수이므로 오른쪽에 2를 쓴다. (빨간색) 자기 자신을 제외한 2의 배수를 모두 지운다. 남아있는 수 가운데 3은 소수이므로 오른쪽에 3을 쓴다. (초록색) 자기 자신을 제외한 3의 배수를 모두 지운다. 남아있는 수 가운데 5는 소수이므로 오른쪽에 5를 쓴다. (파란색) 자기 자신을 제외한 5의 배수를 모두 지운다. 남아있는 수 가운데 7은 소수이므로 오른쪽에 7을 쓴다. (노란색) 자기 자신을 제외한 7의 배수를 모두 지운다. 위의 과정을 반복하면 구하는 구간의 모든 소수가 남는다. 위에서는 2~120 구간에서 소수를 구하니.. 2022. 9. 19.