1. 程式人生 > >(網易2018校招筆試)[程式設計題] 字串碎片

(網易2018校招筆試)[程式設計題] 字串碎片

一個由小寫字母組成的字串可以看成一些同一字母的最大碎片組成的。例如,”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

程式碼

import java.math.BigDecimal;
import java.util.Scanner;

public class StringFragment {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Scanner sc =new Scanner(System.in);
        String str=sc.next();
        char temp;
        Double n=1.0;
        Double avgLength=0.0
; temp=str.charAt(0); for (int i = 1; i < str.length(); i++) { if (temp != str.charAt(i)) { n++; } temp = str.charAt(i); } avgLength=(double) (str.length()/n); BigDecimal b =new BigDecimal(avgLength); System.out.println(b.setScale(2
, BigDecimal.ROUND_HALF_UP).toString()); //System.out.println(b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());//不會保留最後一位1的0 } }

相關推薦

2018筆試[程式設計] 字串碎片

一個由小寫字母組成的字串可以看成一些同一字母的最大碎片組成的。例如,”aaabbaaac”是由下面碎片組成的:’aaa’,’bb’,’c’。牛牛現在給定一個字串,請你幫助計算這個字串的所有碎片的平均長度是多少。 輸入描述: 輸入包括一個字串s,字串s的長度l

(2018筆試)[程式設計] 相反數

題目: 為了得到一個數的"相反數",我們將這個數的數字順序顛倒,然後再加上原先的數得到"相反數"。例如,為了得到1325的"相反數",首先我們將該數的數字順序顛倒,我們得到5231,之後再加上原先的數

(2018筆試)[程式設計] 魔法幣 Magic Coin

小易準備去魔法王國採購魔法神器,購買魔法神器需要使用魔法幣,但是小易現在一枚魔法幣都沒有,但是小易有兩臺魔法機器可以通過投入x(x可以為0)個魔法幣產生更多的魔法幣。 魔法機器1:如果投入x個魔法幣,

2018筆試彩色磚塊

小易有一些彩色的磚塊。每種顏色由一個大寫字母表示。各個顏色磚塊看起來都完全一樣。現在有一個給定的字串s,s中每個字元代表小易的某個磚塊的顏色。小易想把他所有的磚塊排成一行。如果最多存在一對不同顏色的相鄰磚塊,那麼這行磚塊就很漂亮的。請你幫助小易計算有多少種方式將他所有磚塊排

合唱團2017

時間限制:1秒 空間限制:32768K 熱度指數:49379本題知識點: 動態規劃 演算法知識視訊講解題目描述有 n 個學生站成一排,每個學生有一個能力值,牛牛想從這 n 個學生中按照順序選取 k 名學生,要求相鄰兩個學生的位置編號的差不超過 d,使得這 k 個學生的能力值的

喜歡的數列18內推

小易非常喜歡擁有以下性質的數列: 1、數列的長度為n 2、數列中的每個數都在1到k之間(包括1和k) 3、對於位置相鄰的兩個數A和B(A在B前),都滿足(A <= B)或(A mod B != 0)(滿足其一即可) 例如,當n = 4, k = 7 那麼{1,7,7,2

[編程] 相反數 2018

names -- 個數 space ret 如果 整數 描述 namespace 為了得到一個數的"相反數",我們將這個數的數字順序顛倒,然後再加上原先的數得到"相反數"。例如,為了得到1325的"相反數",首先我們將該數的數字順序顛倒,我們得到5231,之後再加上原先的數

2018筆試

前不久被網易的筆試虐了2次,因此特地做一個記錄:給出2個數a, b(b必定是偶數), 把a變成b,其中有3種操作:+2, 需要對應的cost,-2,  需要對應的cost*2,  需要對應的cost,求a變成b需要的最少cost當時腦子一熱,就用bfs, 用一個結構體儲存狀態

2018筆試程式設計——nk數對

題目描述:牛牛以前在老師那裡得到了一個正整數數對(x, y), 牛牛忘記他們具體是多少了。 但是牛牛記得老師告訴過他x和y均不大於n, 並且x除以y的餘數大於等於k。 牛牛希望你能幫他計算一共有多少個可能的數對。首先用兩個for迴圈來暴力求解是可以得到結果,但是時

2018Java開發工程師筆試卷 String.substring(2,5)的輸出結果為

網易2018校招Java開發工程師筆試卷 題目大意: 字串“ABCDEFG”,使用String.substring(2,5)正確輸出結果是: A. BCD B. BCDE

2018程式設計集合

1、小易準備去魔法王國採購魔法神器,購買魔法神器需要使用魔法幣,但是小易現在一枚魔法幣都沒有,但是小易有兩臺魔法機器可以通過投入x(x可以為0)個魔法幣產生更多的魔法幣。 魔法機器1:如果投入x個魔法幣,魔法機器會將其變為2x+1個魔法幣 魔法機器2:如果投入x個魔法幣,魔

2017.04.18:2017資料分析開放

1.異常值檢測 原因: (1)資料來源於不同的類:某個資料物件可能不同於其他資料物件(即異常),因為它術語一個不同的型別或類。Hawkins的離群點定義:離群點是一個觀測值,它與其他觀測值的差別如此之大,以至於懷疑它是由不同的機制產生的。 (2)自然變異:許多資料集可以用一

2018深信服程式設計與面試題

第一題: 順時針輸出矩陣元素: def printMatrix(matrix): res = [] while matrix: res += matrix.pop(0) if matrix and matrix[0]:

2017春筆試編程集合10——小易記單詞

bsp math 字符串 array 如果 new 是否 數據 作用 小易參與了一個記單詞的小遊戲。遊戲開始系統提供了m個不同的單詞,小易記憶一段時間之後需要在紙上寫出他記住的單詞。小易一共寫出了n個他能記住的單詞,如果小易寫出的單詞是在系統提供的,將獲得這個單詞長度的平方

2017春筆試編程集合8——奇怪的表達式求值

next ann new switch 運算 ase 自己 lin pri 常規的表達式求值,我們都會根據計算的優先級來計算。比如*/的優先級就高於+-。但是小易所生活的世界的表達式規則很簡單,從左往右依次計算即可,而且小易所在的世界沒有除法,意味著表達式中沒有/,只有(+

2017春筆試編程集合7——集合

復雜 bsp span 問題 args 一個 add port code 小易最近在數學課上學習到了集合的概念,集合有三個特征:1.確定性 2.互異性 3.無序性.小易的老師給了小易這樣一個集合:S = { p/q | w ≤ p ≤ x, y ≤ q ≤ z }需要根據給

雙非渣碩總結+Java面經阿里百度等

LZ雙非渣碩,應該算是牛客裡最菜的學歷了。。經歷了 春招秋招一路坎坷,最近終於收穫了而滿意的offer,感謝牛客網,也感謝實驗室一起學習的同學們~ 總結一份面經作為對社群的回報吧,先記錄下面試的情況~ Offer:網易考拉Java,網易遊戲測開,攜程Java,CVTE

筆試總結】2019編程-玩你媽的橡皮泥

nbsp 三種 順序 bubuko 環形隊列 什麽 復雜度 問題 ++ 題目我就不多說什麽了,橡皮泥,一串橡皮泥哦。 非黑即白。 小明可以采取以下方法0或多次: 從某一處切割,讓切割處左右隊列內兩條橡皮泥整個發生反轉,再拼接到一起。 輸入: 橡皮泥隊列 輸出: 最長的黑白相

2016內推筆試程式設計

牛牛想嘗試一些新的料理,每個料理需要一些不同的材料,問完成所有的料理需要準備多少種不同的材料。 輸入描述: 每個輸入包含 1 個測試用例。每個測試用例的第 i 行,表示完成第 i 件料理需要哪些材料,各個材料用空格隔開,輸入只包含大寫英文字母和空格,輸入檔案不超過 50

【筆試題】2018內推筆試

今天下午3點到五點做了網易秋招內推筆試題,晚上的時候牛妹就把程式設計題的答案發出來了,聽說有幾萬人參加了,嚇死。。。。。感覺自己太弱。 下面是我做的三道筆試題,一共有八道。。。。。 題目一 問題描述 小易有一個長度為n的整數序列,a_1,…,a_