942. DI String Match
A permutation perm of n + 1 integers of all the integers in the range [0, n] can be represented as a string s of length n where:
s[i] == 'I'ifperm[i] < perm[i + 1], ands[i] == 'D'ifperm[i] > perm[i + 1].
Given a string s, reconstruct the permutation perm and return it. If there are multiple valid permutations perm, return any of them.
Example 1:
Input: s = "IDID" Output: [0,4,1,3,2]
Example 2:
Input: s = "III" Output: [0,1,2,3]
Example 3:
Input: s = "DDI" Output: [3,2,0,1]
1 class Solution { 2 public int[] diStringMatch(String S) { 3 int n = S.length(), left = 0, right = n; 4 int[] res = new int[n + 1]; 5 for (int i = 0; i < n; ++i) 6 res[i] = S.charAt(i) == 'I' ? left++ : right--; 7 res[n] = left; 8 return res; 9 } 10 }