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

牛客周赛:84:C:JAVA

链接:登录—专业IT笔试面试备考平台_牛客网
来源:牛客网
 

题目描述

\hspace{15pt}本题为《D.小红的陡峭值(三)》的简单版本,两题的唯一区别在于本题的数据范围更小。

\hspace{15pt}小红定义一个字符串的陡峭值为:每两个相邻字符,Ascii 码差值的绝对值之和。例如,"bca"\texttt{"bca"}"bca" 的陡峭值是 ∣‘c’−‘b’∣+∣‘a’−‘c’∣=1+2=3|\texttt{`c'}-\texttt{`b'}|+|\texttt{`a'}-\texttt{`c'}|=1 + 2 = 3∣‘c’−‘b’∣+∣‘a’−‘c’∣=1+2=3。
\hspace{15pt}现在小红拿到了一个长度为 nnn,仅由小写字母构成的字符串 sss。她希望你求出这个字符串所有长度为 kkk 的连续子串的陡峭值之和,你能帮帮她吗?

\hspace{15pt}连续子串为从原字符串中,连续的选择一段字符(可以全选、可以不选)得到的新字符串。

输入描述:

\hspace{15pt}第一行输入两个正整数 n,k(2≦k≦n≦103)n,k \left(2\leqq k\leqq n \leqq \pmb{10^3}\right)n,k(2≦k≦n≦103103103) 代表字符串的长度、子串的长度。
\hspace{15pt}第二行输入一个长度为 nnn,仅由小写字母组成的字符串 sss。

输出描述:

\hspace{15pt}输出一个整数,代表所有长度为 kkk 的连续子串的陡峭值之和。

示例1

输入

import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int n=scanner.nextInt();
        int k=scanner.nextInt();
        String s=scanner.next();
        char []c=s.toCharArray();
        int sum=0;
        for (int i = 0; i <=n-k ; i++) {
            for (int j =i+1; j <i+k ; j++) {
                sum+=Math.abs(c[j]-c[j-1]);
            }
        }
        System.out.println(sum);
    }
}
3 2
bca

输出

3

说明

\hspace{15pt}在这个样例中,全部长度为 222 的连续子串如下:
∙ \hspace{23pt}\bullet\,∙"bc"\texttt{"bc"}"bc",陡峭值为 ∣‘b’−‘c’∣=1|\texttt{`b'}-\texttt{`c'}|=1∣‘b’−‘c’∣=1;
∙ \hspace{23pt}\bullet\,∙"ca"\texttt{"ca"}"ca",陡峭值为 ∣‘c’−‘a’∣=2|\texttt{`c'}-\texttt{`a'}|=2∣‘c’−‘a’∣=2。
\hspace{15pt}因此,所有长度为 222 的连续子串的陡峭值之和为 1+2=31+2=31+2=3。

http://www.kler.cn/a/580884.html

相关文章:

  • P9242 [蓝桥杯 2023 省 B] 接龙数列--DP【巧妙解决接龙问题】
  • AI 帮我精准定位解决 ReferenceError: process is not defined (文末附AI名称)
  • Spring WebFlux:响应式编程
  • python使用venv命令创建虚拟环境(ubuntu22)
  • OSPF:虚链路
  • 零基础掌握Linux SCP命令:5分钟实现高效文件传输,小白必看!
  • Unity Dots从入门到精通 Mono和Dots通讯
  • DOCKER模式部署GITLAB
  • 回溯-子集
  • Java集合_八股场景题
  • vue2动态增删表单+表单验证
  • WPF预览并打印FlowDocument
  • Python数据分析之数据处理与分析
  • 修改 Docker 网桥的 IP 范围
  • Oracle RAC配置原理详解:构建高可用与高性能的数据库集群
  • HTML 超链接(简单易懂较详细)
  • NO.29十六届蓝桥杯备战|string九道练习|reverse|翻转|回文(C++)
  • AI算法与应用 全栈开发 前端开发 后端开发 测试开发 运维开发
  • 【阿里云】操作系统控制台——体验与测评
  • c#面试题整理3