본문 바로가기

Algorithm65

[JAVA] 누계 계산 시험에서 등급 i를 받은 학생들의 수를 저장하고, 등급 i 이하의 등급을 받은 학생들의 수를 저장하는 문제 - 시험 등급들의 빈도의 배열 FREQ[0 .. n-1] - 누계 빈도들의 배열 CUME[0 .. n-1] 시간복잡도 O(N) 알고리즘 ComputeCumulativeSum(FREQ[0 .. n-1]) CUME[0] = FREQ[0] for (i = 1; i < n; i++) CUME[i] = CUME[i-1] + FREQ[i] return CUME JAVA public class ComputeCumulativeSum { public static void main(String[] args) { int[] FREQ = {1, 0, 7, 5, 4}; int[] CUME; CUME = computeCum.. 2021. 12. 5.
[JAVA] 최댓값 찾기 (순차탐색) 크기가 N(>1) 인 배열 내에 있는 숫자들 중 최댓값을 찾는 문제 1. 배열의 첫 번째 요소를 최댓값으로 정한다 2. 배열의 다음 요소와 최댓값을 비교한다. 만약 다음 요소가 최댓값보다 크다면 최댓값을 그 요소로 바꾼다 3. 배열 내에 비교할 요소가 남아 있으면 2단계로 가고 아니면 종료한다. 시간복잡도 O(N) 알고리즘 FindMaximum(A[0 .. N-1]) max = A[0] for (i = 1; i max) max = A[i] return max JAVA public class FindMaximum { public static void main(String[] args) { int[] intArray = {72, 60, 83, 47, 89, 95}; in.. 2021. 12. 5.
[JAVA] SWEA 6109번 추억의 2048게임 문제 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWbrg9uabZsDFAWQ&categoryId=AWbrg9uabZsDFAWQ&categoryType=CODE SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 풀이 import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.util.StringTokenizer; public .. 2021. 8. 10.
[JAVA] SWEA 1861번 정사각형 방 문제 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5LtJYKDzsDFAXc&categoryId=AV5LtJYKDzsDFAXc&categoryType=CODE SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 풀이 import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.util.StringTokenizer; public .. 2021. 8. 10.
[JAVA] SWEA 1244번 최대 상금 문제 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV15Khn6AN0CFAYD&categoryId=AV15Khn6AN0CFAYD&categoryType=CODE SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 풀이 import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.util.Arrays; import java.util.. 2021. 8. 10.
[JAVA] SWEA 1267번 작업순서 문제 해야 할 V개의 작업이 있다. 이들 중에 어떤 작업은 특정 작업이 끝나야 시작할 수 있으며, 이를 선행 관계라 하자. 이런 작업의 선행 관계를 나타낸 그래프가 주어진다. 이 그래프에서 각 작업은 하나씩의 정점으로 표시되고 선행 관계는 방향성을 가진 간선으로 표현된다. 단, 이 그래프에서 사이클은 존재하지 않는다 (사이클은 한 정점에서 시작해서 같은 정점으로 돌아오는 경로를 말한다). 아래 그림은 이런 그래프의 한 예다. 이 그래프에서 작업 1은 작업 4가 끝나야 시작할 수 있다. 작업 6은 작업 5와 작업 7이 끝나야 할 수 있다. 이 그래프에서는 사이클이 없다. 김과장은 선행 관계가 주어진 작업군을 한 번에 하나의 작업씩 처리해서 다 끝내려 한다. 위에서 예를 든 작업군에 대해서 이런 일을 한다면.. 2021. 8. 2.