Advertisement
lifeiteng

616. Add Bold Tag in String

Sep 13th, 2018
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 0.79 KB | None | 0 0
  1. class Solution {
  2.     public String addBoldTag(String s, String[] dict) {
  3.         int n = s.length();
  4.         boolean[] f = new boolean[n];
  5.         for(String d : dict)
  6.         {
  7.             int pos = s.indexOf(d);
  8.             while(pos >= 0)
  9.             {
  10.                 for(int i = pos; i < pos + d.length(); i++) f[i] = true;
  11.                 pos = s.indexOf(d, pos + 1);
  12.             }
  13.         }
  14.         int i = 0, j = 0;
  15.         StringBuilder sb = new StringBuilder();
  16.         while(j < n)
  17.         {
  18.             if(!f[j]) sb.append(s.charAt(j++));
  19.             else
  20.             {
  21.                 i = j;
  22.                 while(j < n && f[j]) j++;
  23.                 sb.append("<b>").append(s.substring(i, j)).append("</b>");
  24.             }
  25.         }
  26.         return sb.toString();
  27.     }
  28. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement