Advertisement
vit134

AAABBACDDDAFFEEEELL => A3B2ACD3AF2E4L

Oct 26th, 2018
131
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /*
  2.     Разложить множество на подмножетсва (AAABBACDDDAFFEEEELL => A3B2ACD3AF2E4L2)
  3. */
  4.  
  5.  
  6. const mn = 'AAABBACDDDAFFEEEELL';
  7.  
  8. function minimalize(str) {
  9.     let stack = [str[0]];
  10.     let count = 0;
  11.     let result = '';
  12.    
  13.     for (let i = 0; i <= str.length; i++) {
  14.         let c = str[i];
  15.        
  16.         if (stack[0] === c) {
  17.             count++;
  18.         } else {
  19.             result += stack.pop() + (count !== 1 ? count : '');
  20.             stack.push(c);
  21.             count = 1;
  22.         }
  23.     }
  24.    
  25.     return result;
  26. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement