Guest User

Untitled

a guest
Jan 18th, 2018
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.55 KB | None | 0 0
  1. function zip(s){
  2.  
  3. if(!s.length) return s;
  4.  
  5. let za=[];
  6. let zv=[];
  7.  
  8. for(
  9. let i=0,ind=-1,cur=false;
  10. i<s.length;
  11. i++
  12. ){
  13. if(cur!=s[i]){
  14. ind++;
  15. cur=s[i];
  16.  
  17. za[ind]=s[i];
  18. zv[ind]=1;
  19.  
  20. continue;
  21. }
  22. zv[ind]++;
  23. }
  24.  
  25. let res='';
  26. for(let i=0;i<za.length;i++){
  27. res+=za[i];
  28. if(zv[i]>1)res+=zv[i];
  29. }
  30.  
  31. return (res.length<s.length)?res:s;
  32. }
  33.  
  34. console.log(
  35. [
  36. ['test','test'],
  37. ['aaab','a3b'],
  38. ['aaabb','a3b2'],
  39. ['aabb','aabb'],
  40. ['abbb','ab3'],
  41. ['aaaa','a4'],
  42. ].map(i=> (zip(i[0])==i[1]))
  43. )
Add Comment
Please, Sign In to add comment