当前位置: 首页 > news >正文

怎么查一个网站的外链和反链软件安徽省驻房城乡建设官方网站

怎么查一个网站的外链和反链软件,安徽省驻房城乡建设官方网站,嵌入式开发软件有哪些,网页设计样图🍭 大家好这里是清隆学长 ,一枚热爱算法的程序员 ✨ 本系列打算持续跟新华为OD-C/D卷的三语言AC题解 💻 ACM银牌🥈| 多次AK大厂笔试 | 编程一对一辅导 👏 感谢大家的订阅➕ 和 喜欢💗 &#x1f…

🍭 大家好这里是清隆学长 ,一枚热爱算法的程序员

✨ 本系列打算持续跟新华为OD-C/D卷的三语言AC题解

💻 ACM银牌🥈| 多次AK大厂笔试 | 编程一对一辅导

👏 感谢大家的订阅➕ 和 喜欢💗

📎在线评测链接

https://app5938.acapp.acwing.com.cn/contest/2/problem/OD1065
🌍 评测功能需要 ⇒ 订阅专栏 ⇐ 后私信联系清隆解锁~

🍓OJ题目截图

在这里插入图片描述

文章目录

    • 📎在线评测链接
    • 🍓OJ题目截图
    • 🏠 连续字母长度
      • 问题描述
      • 输入格式
      • 输出格式
      • 样例输入
      • 样例输出
      • 样例解释
      • 数据范围
      • 题解
      • 参考代码

🏠 连续字母长度

问题描述

K小姐有一个只包含大写字母的字符串,她想知道在所有包含同一字母的子串中,长度第 k k k 大的子串的长度是多少。注意,对于相同字母,只考虑最长的那个子串。

输入格式

第一行输入一个字符串 s s s,字符串长度满足 1 < ∣ s ∣ ≤ 1 0 5 1 < |s| \le 10^5 1<s105,且只包含大写字母。
第二行输入一个整数 k k k,表示要求的子串长度的排名。

输出格式

输出一个整数,表示第 k k k 长的子串的长度。如果不存在第 k k k 长的子串,则输出 − 1 -1 1

样例输入

AAAAHHHBBCDHHHH
3

样例输出

2

样例解释

在给定的样例中,同一字母连续出现次数最多的是 A A A H H H,均为 4 4 4 次。第二多的是 H H H,有 3 3 3 次连续出现,但由于 H H H 已经有了更长的子串,因此不予考虑。下一个最长的子串是 B B BB BB,长度为 2 2 2。因此,最终答案为 2 2 2

数据范围

1 < ∣ s ∣ ≤ 1 0 5 1 < |s| \le 10^5 1<s105
1 ≤ k ≤ 26 1 \le k \le 26 1k26

题解

本题可以通过统计每个字母出现的最长连续子串的长度,然后对这些长度进行排序来解决。具体步骤如下:

  1. 遍历字符串 s s s,统计每个字母出现的最长连续子串的长度,并用一个长度为 26 26 26 的数组 l e n len len 来存储,其中 l e n [ i ] len[i] len[i] 表示字母 i i i 出现的最长连续子串的长度。
  2. 对数组 l e n len len 进行降序排序。
  3. 判断排序后的数组 l e n len len 中第 k − 1 k-1 k1 个元素(下标从 0 0 0 开始)是否为 0 0 0,如果为 0 0 0,说明不存在第 k k k 长的子串,输出 − 1 -1 1;否则,输出 l e n [ k − 1 ] len[k-1] len[k1] 即可。

时间复杂度: O ( n log ⁡ n ) O(n \log n) O(nlogn),其中 n n n 为字符串 s s s 的长度。
空间复杂度: O ( 1 ) O(1) O(1)

参考代码

  • Python
def solve(s, k):n = len(s)len_arr = [0] * 26i = 0while i < n:j = iwhile j < n and s[j] == s[i]:j += 1c = ord(s[i]) - ord('A')len_arr[c] = max(len_arr[c], j - i)i = jlen_arr.sort(reverse=True)return len_arr[k - 1] if len_arr[k - 1] > 0 else -1s = input().strip()
k = int(input())
print(solve(s, k))
  • Java
import java.util.Arrays;
import java.util.Scanner;public class Main {public static int solve(String s, int k) {int n = s.length();int[] lenArr = new int[26];int i = 0;while (i < n) {int j = i;while (j < n && s.charAt(j) == s.charAt(i)) {j++;}int c = s.charAt(i) - 'A';lenArr[c] = Math.max(lenArr[c], j - i);i = j;}Arrays.sort(lenArr);return lenArr[25 - k + 1] > 0 ? lenArr[25 - k + 1] : -1;}public static void main(String[] args) {Scanner scanner = new Scanner(System.in);String s = scanner.nextLine();int k = scanner.nextInt();System.out.println(solve(s, k));}
}
  • Cpp
#include <iostream>
#include <string>
#include <algorithm>using namespace std;int solve(string s, int k) {int n = s.length();int lenArr[26] = {0};int i = 0;while (i < n) {int j = i;while (j < n && s[j] == s[i]) {j++;}int c = s[i] - 'A';lenArr[c] = max(lenArr[c], j - i);i = j;}sort(lenArr, lenArr + 26, greater<int>());return lenArr[k - 1] > 0 ? lenArr[k - 1] : -1;
}int main() {string s;int k;cin >> s >> k;cout << solve(s, k) << endl;return 0;
}
http://www.yayakq.cn/news/643207/

相关文章:

  • 阿里云虚拟主机wordpress建站教程前后端分离的网站怎么做
  • 机械网站开发方案网站建设实施方案及预算
  • 云南网站建设电话制图软件免费
  • 京东的网站建设分析北京企业网站建设哪家服务好
  • 百度做网站教程北京工商登记服务平台
  • 家政公司网站建设个人网站建设程序设计
  • 我学我做我知道网站蝴蝶传媒网站推广
  • 企业网站设计多少钱淄博网站公司
  • 北京定制网站建设公司做化学合成的网站有哪些
  • 易展 网站建设兰州手机网站建设
  • 建筑导航网站医院行业网站
  • 淘宝app官网杭seo网站建设排名
  • 设计了网站首页杭州有哪些做网站的公司好
  • 做亚马逊网站需要租办公室吗值得玩的网页游戏
  • nodejs做网站还是app夸克搜索引擎
  • 做电销哪些网站可以找到客户端永久开源的免费建站系统
  • 建立英文网站星巴克seo网络推广
  • 优化怎么做网页搜索引擎优化技术
  • 广电基础设施建设官方网站网站换服务器对排名有影响吗
  • 深圳建设工程招投标网站常熟seo关键词优化公司
  • 外贸网站建站方案建设商场黄金网站
  • 网站是如何制作的wordpress插件 速度
  • 时代强个人网站中国风网站建设
  • 罗湖建网站公司上海包装设计公司排名
  • 网站的优化是什么有哪些网站的搜索引擎
  • 公司做网站算什么费用苏州工业园区外国语学校
  • 岳阳建设网站徐州网站简介
  • 特价锦州网站建设山东3个中高风险地区
  • 小公司网站建设现状设计说明书
  • 手机做图纸app下载网站wordpress汉化.po