因為數字最大會是 10 的 150 次方,所以要用字串的方式來收彩帶的數字。使用 Map 來紀錄每個區間的數字數量,並且宣告一個變數 number 來紀錄目前的區段中有多少個不同的數字。
跑一個 For迴圈 從 0 到 N-1,並且每次都將新的資料紀錄到 Map 中並且把最左邊的資料做刪除,如果刪除的資料中的 Map 值是 0,那就 number–,代表區段中少了一個不同的數字。並且如果新加入的數字的 Map 值是 1,代表是一個全新的數字 number++,每次迴圈都要判斷 number 是否等於 M,如果有等於的話就將答案 +1。