Algorithm/COS PRO 1급 기출문제
[COS PRO 1급 기출문제 - Java] 1-10 주식으로 최대 수익을 내세요
goakgoak
2020. 12. 21. 14:48
문제 유형
코드 수정하기
문제
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
|
import java.lang.Math;
import java.util.*;
class Main {
int solution(int[] prices){
int INF = 1000000001;
int tmp = INF;
int answer = -INF;
for(int price : prices){
if(tmp != INF)
answer = Math.max(answer, tmp - price);
tmp = Math.min(tmp, price);
}
return answer;
}
public static void main(String[] args) {
Main sol = new Main();
int[] prices1 = {1, 2, 3};
int ret1 = sol.solution(prices1);
System.out.println("solution 함수의 반환값은 " + ret1 + " 입니다.");
int[] prices2 = {3, 1};
int ret2 = sol.solution(prices2);
System.out.println("solution 함수의 반환값은 " + ret2 + " 입니다.");
}
}
|
cs |
풀이
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
|
import java.lang.Math;
import java.util.*;
class Main {
int solution(int[] prices){
int INF = 1000000001;
int tmp = INF;
int answer = -INF;
for(int price : prices){
if(tmp != INF)
answer = Math.max(answer, price - tmp);
tmp = Math.min(tmp, price);
}
return answer;
}
public static void main(String[] args) {
Main sol = new Main();
int[] prices1 = {1, 2, 3};
int ret1 = sol.solution(prices1);
System.out.println("solution 함수의 반환값은 " + ret1 + " 입니다.");
int[] prices2 = {3, 1};
int ret2 = sol.solution(prices2);
System.out.println("solution 함수의 반환값은 " + ret2 + " 입니다.");
}
}
|
cs |