Language: Java

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.ArrayDeque;
import java.util.Deque;

public class Stack {

	public static void main(String[] args) throws Exception {
		// TODO ?????????????????????????????????????????????
		BufferedReader br =
				new BufferedReader( new InputStreamReader(System.in) );

		Deque<Integer> stack = new ArrayDeque<>();

		char[] data = br.readLine().toCharArray();

		/**
		 * ?????£????????????data?????????????????´??°?????????????????????
		 * \ ??¨ / ?????????????????¨???????°´?????????????????§???
		 * \ ??¨???????????????????????? / ????????¨????????´??????
		 * \ ?????¨?????¨??????????????´??°????????????????´?????????????????????? / ??????????????????????????????????????¨?????°????????\?????????
		 * ???????????? / ????????? \ ??¨???\??\???????????????????????????/??¨_????????¨????????? 0 ?????\?????????
		 *
		 */
		int[] water = new int[data.length];
		for (int i=0; i < water.length; i++) {
			water[i] = 0;
		}

		/**
		 * ??\???????????????????????????????????????????????????i??????????????????????????????
		 * ???????????????????????????
		 *
		 * backslash \ ?????£?????´??????????????????????????¨?????°???????????????????????????????????????????????\?????????
		 * underscore _ ?????£?????´???????????????????????§?¬?????????????????????????
		 * slash / ?????£?????´???????????????????????????????????????backslash \ ????????????????????????????????????
		 * ?????????????????¨????????????????????´??°???????????????????????????????????????????´?????????´??° i ?????\?????????
		 *
		 * stack???????????\??£???????????????backslash\????????????????????§?????????????????????????????¨????????????????????????
		 *
		 */
		for (int i=0; i < data.length; i++) {
			if (data[i] == '\\') { stack.push(i); }
			else if (data[i] == '/') {
				if ( !stack.isEmpty() ) {
					int x = stack.pop();
					water[x] = i;
				}
			}
		}

		StringBuilder sb = new StringBuilder();

		int k = 0; // ?°´??????????????°
		int A = 0; // ?°´?????????

		/**
		 * ??°??¢?????????????????´??°?????????water??????????????????????????????
		 * ?°´?????????????????????????????£????????????????°´??????????????\??£???????°´??????????????????????????¨???
		 * ?°´???????????????????????§????°?????£???¶???
		 * ?????????????????????????????????????????????????????????water?????????????????????
		 *
		 */
		for (int i=0; i < water.length; i++) {
			if (water[i] != 0) {
				int Li = 0;
				for (int j=i; j < water[i]; j++) {
					if (water[j] != 0) {
						Li += water[j] - j;
					}
				}
				sb.append(" " + Li);
				k++;
				A += Li;
				i = water[i];
			}
		}
		System.out.println(A);
		System.out.println(k + sb.toString());

//		System.out.println(data);
//		System.out.println('\\');
	}

}

/*           10        20        31
 * 0123456789012345678901234567890123456
 * \\///\_/\/\\\\/_/\\///__\\\_\\/_\/_/\
 * 32   7  9  164   09         50  3
 * 3,2,7,9,21,16,14,20,19,35,30,33,
 *
 * 3-0 + 2-1 = 4
 * 7-5 = 2
 * 9-8 = 1
 * 21-11 + 16-12 + 14-13 + 20-17 + 19-18 = 19
 * 35-28 + 30-29 + 33-32 = 9
 *
 */

Compiler output:
Main.java:6: error: class Stack is public, should be declared in a file named Stack.java
public class Stack {
       ^
1 error