zoukankan      html  css  js  c++  java
  • 字符串碎片——网易校招编程题

    一个由小写字母组成的字符串可以看成一些同一字母的最大碎片组成的。例如,"aaabbaaac"是由下面碎片组成的:'aaa','bb','c'。牛牛现在给定一个字符串,请你帮助计算这个字符串的所有碎片的平均长度是多少。

    输入描述:
    输入包括一个字符串s,字符串s的长度length(1 ≤ length ≤ 50),s只含小写字母('a'-'z')



    输出描述:
    输出一个整数,表示所有碎片的平均长度,四舍五入保留两位小数。
    
    如样例所示: s = "aaabbaaac"
    所有碎片的平均长度 = (3 + 2 + 3 + 1) / 4 = 2.25
    输入例子1:
    aaabbaaac
    输出例子1:
    2.25
     1 readline = require('readline');
     2 const rl = readline.createInterface({
     3     input: process.stdin,
     4     output: process.stdout
     5 })
     6 rl.on('line',function(line) {
     7     var res = deal(line);
     8     console.log(res.toFixed(2));
     9 })
    10 
    11 function deal(line) {
    12     // var arr = line.split('');
    13     var target = line[0];
    14     var cnt = 1;
    15     var kind = 0;
    16     var sum = 0;
    17     var len = line.length;
    18     for (var i=1; i<len; i++) {
    19         if (line[i] === target) {
    20             cnt++;
    21         } else {
    22             sum = sum + cnt;
    23             kind++;
    24             target = line[i];
    25             cnt = 1;
    26         }
    27     }
    28     kind++;
    29     sum = sum + cnt;
    30     return sum / kind;
    31 }

    这个。。主要是突然忘了js怎么保留两位小数了。

  • 相关阅读:
    第八讲、原型模式
    第七讲、建造者模式
    第六讲、抽象工厂模式
    第五讲、工厂方法模式
    第四讲、简单工厂模式
    第三讲、策略模式
    第二讲、备忘录模式
    第一讲、单例模式
    二、中国黑客
    java 17
  • 原文地址:https://www.cnblogs.com/zou20134585/p/8652037.html
Copyright © 2011-2022 走看看