728x90
https://www.acmicpc.net/problem/12845
요즘 백준을 아무리 풀어도 실력이 늘지 않는 느낌을 받았다.
오픈 채팅방에 고민을 털었도니, 어떤 분께서 그리디 알고리즘을 많이 풀어보라고 조언해주셨다!
그래서 그리디 알고리즘만 n일째 패는 중 ㅎㅎ 그리디 알고리즘이 딱히 정해진 틀은 없는 거 같아서 문제마다 좀 새롭다..
하지만~ 이 문제는 간단한 실버3 문제였다!
가장 큰 수를 기준으로 더해가면 해결된다.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n= Integer.parseInt(br.readLine());
int max=0;
int idx=0;
ArrayList<Integer> list = new ArrayList<>();
StringTokenizer st = new StringTokenizer(br.readLine());
for(int i=0;i<n;i++) {
list.add(Integer.parseInt(st.nextToken()));
if(max<list.get(i)) {
max=list.get(i);
idx=i;
}
}
int result=0;
for(int i=idx+1;i<=n-1;i++) {
result+=max+list.get(i);
}
for(int i=idx-1;i>=0;i--) {
result+=max+list.get(i);
}
System.out.println(result);
}
}
'Java' 카테고리의 다른 글
[백준 3190] 뱀 (JAVA) (0) | 2023.06.06 |
---|---|
[백준 16234] 인구 이동 (JAVA) (0) | 2023.06.02 |
[백준 2110] 공유기 설치 (JAVA) (0) | 2023.06.01 |
[백준 9017] 크로스 컨트리 (JAVA) (0) | 2023.05.31 |
[백준 1508] 레이스 (JAVA) (0) | 2023.05.31 |