View difference between Paste ID: 5LHVRxRe and 0FWfSxUB
SHOW: | | - or go back to the newest paste.
1
// Author : Saurav Kalsoor
2-
// Game with Thor and Loki - JAVA
2+
// Reduce String - JAVA
3
4
import java.util.*;
5
6
public class Test {
7
    
8
    static Scanner sc = new Scanner(System.in);
9
    public static void main(String[] args) {
10-
        int n = sc.nextInt();
10+
        String n = sc.next();
11
		System.out.println(reduceString(n));
12-
        ArrayList<Integer> arr = new ArrayList<>();
12+
13
    }
14-
        for(int i=0; i < n; i++) {
14+
15-
            int input = sc.nextInt();
15+
    public static String reduceString(String originalString){
16-
            arr.add(input);
16+
		if(originalString.length() <= 2) return originalString;
17-
        }
17+
18
		String newString = "";
19-
		gameWithThorAndLoki(arr, n);
19+
		originalString = recurse(originalString, newString);
20
		return reduceString(originalString);
21
	}
22
23-
    public static void gameWithThorAndLoki(ArrayList<Integer> arr, int n){
23+
	public static String recurse(String oldString, String newString){
24-
		int start = 0, end = n - 1;
24+
		if(oldString.isEmpty()) return newString;
25-
		boolean isThorsTurn = true;
25+
26
		int n = oldString.length();
27-
		ArrayList<Integer> res = recurr(arr, start, end, isThorsTurn);
27+
		if(n == 1){
28
			return newString + oldString;
29-
		System.out.println(res.get(0) + " " + res.get(1));
29+
30
31
		int first = oldString.charAt(0) - '0', last = oldString.charAt(n-1) - '0';
32-
	public static ArrayList<Integer> recurr(ArrayList<Integer> arr, int start, int end, boolean isThorsTurn){
32+
		int sum = first + last;
33-
		if(start > end){
33+
34-
			ArrayList<Integer> res = new ArrayList<Integer>();
34+
		oldString = oldString.substring(1, n - 1);
35-
			res.add(0);
35+
		newString += Integer.toString(sum);
36-
			res.add(0);
36+
		return recurse(oldString, newString);
37-
			return res;
37+
38
}
39
40-
		int left = arr.get(start);
40+
41-
		int right = arr.get(end);
41+