首页 > 其他分享 >809. 情感丰富的文字

809. 情感丰富的文字

时间:2022-11-25 22:45:37浏览次数:59  
标签:文字 word charAt int res 情感 ++ 809 length

809. 情感丰富的文字

class Solution {
   public int expressiveWords(String s, String[] words) {
        int res = 0;
        if (s.isEmpty()) {
            for (String word : words) {
                if (word.isEmpty()) res++;
            }
            return res;
        }
        List<Pair> q = new ArrayList<>();
        for (int i = 0; i < s.length(); i++) {
            int j = i + 1;
            while (j < s.length() && s.charAt(i) == s.charAt(j)) j++;
            q.add(new Pair(s.charAt(i), j - i));
            i = j - 1;
        }
        for (String word : words) {
            int k = 0;
            for (int i = 0; i < word.length(); i++) {
                if (k == q.size()) {
                    k = -1;
                    break;
                }
                if (q.get(k).x != word.charAt(i)) break;
                int j = i + 1;
                while (j < word.length() && word.charAt(i) == word.charAt(j)) j++;
                int c1 = q.get(k).y, c2 = j - i;
                if (c1 < c2) break;
                if (c1 < 3 && c1 != c2) break;
                k++;
                i = j - 1;
            }
            if (k == q.size()) res++;
        }
        return res;
    }

        static class Pair {
            char x;
            int y;

            Pair(char x, int y) {
                this.x = x;
                this.y = y;
            }
        }
}

标签:文字,word,charAt,int,res,情感,++,809,length
From: https://www.cnblogs.com/eiffelzero/p/16926597.html

相关文章

  • 11.25lc每日一题-809. 情感丰富的文字
    有时候人们会用重复写一些字母来表示额外的感受,比如"hello"->"heeellooo","hi"->"hiii"。我们将相邻字母都相同的一串字符定义为相同字母组,例如:"h","eee","ll","o......
  • 情感丰富的文字
    情感丰富的文字有时候人们会用重复写一些字母来表示额外的感受,比如"hello"->"heeellooo","hi"->"hiii"。我们将相邻字母都相同的一串字符定义为相同字母组,例如:"h",......
  • 809. 情感丰富的文字
    有时候人们会用重复写一些字母来表示额外的感受,比如"hello"->"heeellooo","hi"->"hiii"。我们将相邻字母都相同的一串字符定义为相同字母组,例如:"h","eee","ll","o......
  • 网易私有云新增的测试驱动力,Airtest-ocr文字识别点击真香!
    1.前言熟悉我们开源框架的朋友都知道,AirtestProject一直以来,都对外开源了2个自动化测试框架,Airtest和Poco,Airtest是基于图像识别原理的,Poco是基于控件识别原理的。这2......
  • JS设置光标选中text中指定文字
    <!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""​​http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd​​​"><htmlxmlns="​​​http://ww......
  • vue js文字跑马灯基础版本
    1.html原生方法<marquee>123123</marquee>2.定时器方法letpaymentPromptText=document.getElementById('paymentPromptText');//文本的总宽度consttext......
  • OpenHarmony集成OCR三方库实现文字提取
    作者:郭岳峰一、简介Tesseract(Apache2.0License)是一个可以进行图像OCR识别的C++库,可以跨平台运行。本样例基于Tesseract库进行适配,使其可以运行在OpenAtomOpenHar......
  • 尺寸标注的文字应该绘制在哪里?
    问题引入在标注尺寸时,我们会在双向箭头中心处的旁边,绘制对应的文本提示。要绘制的文字位置看起来自然舒服,文本的绘制位置并不是简单地从线段中心点偏移固定值。计算过程......
  • NFC芯片DP1363F兼容LRC663/RC522支持18092/15693协议多设备读卡超高性价比
    DP1363是一款高度集成的非接触读写芯片,集强大的多协议支持、最高射频输出功率、以及突破性技术低功耗卡片检测等优势一身,满足市场对更高集成度、更小外壳和互操作性的需求,......
  • 直播电商平台开发,css实现超出部分显示省略号,控制文字
    直播电商平台开发,css实现超出部分显示省略号,控制文字 <divclass="content">css实现超出部分显示省略号,控制文字css实现超出部分显示省略号,控制文字</div> /*显示一行......