Участник:Dancho O/Hydroelectric

Материал из DISCOPAL
Перейти к: навигация, поиск

https://www.spoj.com/problems/HYDRO/

import java.util.*;
import java.lang.*;
 
class Main
{
    public static void main (String[] args) throws java.lang.Exception {
	Scanner sc = new Scanner(System.in);
        int t = sc.nextInt();
        for (int i = 0; i < t; i++) {
            int n = sc.nextInt();
            List<Integer> list = new ArrayList<>(n);
            for (int j = 0; j < n; j++) {
                list.add(sc.nextInt());
            }
            int ans = 0;
            while(list.size() > 1) {
                int minus = 0;
                for (int j = 1; j < list.size(); j++) {
                    if(list.get(j) != 0) {
                        if(list.get(0) <= list.get(j)) {
                            ans += (j - 1) * list.get(0) - minus;
                            list = list.subList(j, list.size());
                            minus = 0;
                            j = 0;
                        } else {
                            minus += list.get(j);
                        }
                    }
                }
                Collections.reverse(list);
            }
            System.out.println(ans);
        }
    }
}