1. 程式人生 > >hihoCoder #1457 : 字尾自動機四·重複旋律7(字尾自動機 + 拓撲排序)

hihoCoder #1457 : 字尾自動機四·重複旋律7(字尾自動機 + 拓撲排序)

描述

小Hi平時的一大興趣愛好就是演奏鋼琴。我們知道一段音樂旋律可以被表示為一段數構成的數列。

神奇的是小Hi發現了一部名字叫《十進位制進行曲大全》的作品集,顧名思義,這部作品集裡有許多作品,但是所有的作品有一個共同特徵:只用了十個音符,所有的音符都表示成0-9的數字。

現在小Hi想知道這部作品中所有不同的旋律的“和”(也就是把串看成數字,在十進位制下的求和,允許有前導0)。答案有可能很大,我們需要對(10^9 + 7)取摸。

輸入

第一行,一個整數N,表示有N部作品。

接下來N行,每行包含一個由數字0-9構成的字串S。

所有字串長度和不超過 1000000。

輸出

共一行,一個整數,表示答案 mod (10^9 + 7)。

相關推薦

hihoCoder #1457 : 字尾自動機·重複旋律7字尾自動機 + 排序)

描述 小Hi平時的一大興趣愛好就是演奏鋼琴。我們知道一段音樂旋律可以被表示為一段數構成的數列。 神奇的是小Hi發現了一部名字叫《十進位制進行曲大全》的作品集,顧名思義,這部作品集裡有許多作品,但是所有的作品有一個共同特徵:只用了十個音符,所有的音符都表示成0-9的數字。 現在小Hi想知道這部作品中所

hihocoder 1449 : 字尾自動機三·重複旋律6字尾自動機

#1449 : 字尾自動機三·重複旋律6 時間限制:15000ms 單點時限:3000ms 記憶體限制:512MB 描述 小Hi平時的一大興趣愛好就是演奏鋼琴。我們知道一個音樂旋律被表示為一段數構成的數列。 現在小Hi想知道一部作品中所有長度為K的旋律中出現次

hihocoder 1445 : 字尾自動機二·重複旋律5字尾自動機

給入門新手的模板題,套kuangbin大佬的模板。 當前節點的minlen就等於當前節點的fa節點的maxlen+1。 #include <bits/stdc++.h> using na

圖相關)圖的鄰接矩陣表示C++)-排序

一.測試用圖 二.拓撲排序 void toposort(graph g) {//注意,拓撲排序中要把鄰接矩陣中沒有邊的位置置為0(為了統計入度) size_t N = g.cost.size(); vector<int> InDegree(N, 0);//統

hihocoder 1449 : 字尾自動機三·重複旋律6

Time Limit:15000ms Case Time Limit:3000ms Memory Limit:512MB 描述 小Hi平時的一大興趣愛好就是演奏鋼琴。我們知道一個音樂旋律被表示為一段數構成的數列。 現在小Hi想知道一部作品中所有長度為K的旋律中出現次

[Hihocoder](1445)字尾自動機二·重複旋律5 ----SAM構造

題目傳送門 做法: 我們知道SAM中 l[st] 陣列的意義是狀態st的最長子串的長度 從前一狀態到當前狀態的轉移所增加的子串數量: l[st] - l[slink[st]] AC程式碼: #inc

hihoCoder #1465 : 字尾自動機五·重複旋律8

描述 小Hi平時的一大興趣愛好就是演奏鋼琴。我們知道一段音樂旋律可以被表示為一段數構成的數列。 小Hi發現旋律可以迴圈,每次把一段旋律裡面最前面一個音換到最後面就成為了原旋律的“迴圈相似旋律”,還可以對“迴圈相似旋律”進行相同的變換能繼續得到原串的“迴圈相似旋律”。 小Hi對此產生了濃厚的興趣,他有

hihoCoder #1445 : 字尾自動機二·重複旋律5

#include<cstdio> #include<cstring> #include<iostream> #include<algorithm> #define N 1000001 using namespace std; int

[Hihocoder](1415)字尾陣列三·重複旋律3 ---- 字尾陣列(最長公共子串)

題目傳送門 做法: 我們知道,字串中任意一個子串都是某個字尾的字首 我們也知道了Height陣列的含義是排名為i的字尾與排名i-1的字尾的最長公共字首,即就是最長公共子串。 現在題意讓我們找兩個串的最

hihocoder 1457後綴自動機+排序

十進制 重復 space cout add pac 不重復 min != 題意 給定若幹組由數字構成的字符串,求所有不重復子串的和(把他們看成十進制),答案mod(1e9+7) 題解: 類似後綴數組的做法,把字符串之間用‘:‘連接,這裏用‘:‘是因為‘:‘的ascii碼

尋找一個字串中的最長重複子串字尾陣列)&找出一個字串中最長不重複子串

一、尋找一個字串中的最長重複子串(字尾陣列) 字尾陣列其實可以看尋找一個字串中的最長重複子串(字尾陣列)作一個由字串s倒數i個字元組成的子串的集合,其中0<i<s.length(),例如 字串strstr的字尾陣列為: {r,tr,str,rstr,trstr,

hihoCoder#1185 : 連通性·三 tarjan求強聯通分量 縮點 dfs/排序求路徑和最大值

連通 namespace 關系 ont name problems lan 能夠 blog 題目鏈接: http://hihocoder.com/problemset/problem/1185# 題意: n個點,每個點有一個權值,m條有向邊,從1出發,每走到一個點, 就吃掉

hihoCoder #1185 : 連通性·三(強聯通分量+排序)

problems problem 正整數 push_back con images pre ret 一個 #1185 : 連通性·三 時間限制:10000ms 單點時限:1000ms 內存限制:256MB 描述 暑假到

題解報告:hihoCoder #1174:排序·一

TP 格式 eof max bits 前置 ++ 什麽 == 題目鏈接:https://hihocoder.com/problemset/problem/1174 時間限制:10000ms 單點時限:1000ms 內存限制:256MB 描述 由於今天上課的老師講的特別

數據結構三十排序

活動 分享 wid http mage 刪除 例如 結構 過程   一、拓撲排序的定義   1.AOV網:在一個表示工程的有向圖中,用頂點表示活動,用弧表示活動之間的優先關系,這樣的有向圖為頂點表示活動的網,稱為AOV網(Activity On Vertex Network

hihoCoder - 1870 Jin Yong’s Wukong Ranking List 排序2018ICPC北京A)

時間限制:1000ms 單點時限:1000ms 記憶體限制:512MB 描述 Jin Yong was the most famous and popular Chinese wuxia (The one who fight bad people by his Wuko

[圖] 7.1 排序|序列

【測試資料】 【結果】 【資料結構】鄰接表為例 需要將鄰接表的資料結構加上一個count,表示入度 typedef struct VNode{ char data; int count; //入度 ArcNode *firstarc; //第一條邊

實驗建圖,無向圖+鄰接矩陣BFS,DFS遞迴+非遞迴)),有向圖+鄰接表BFS,DFS遞迴+非遞迴)),排序

//Sinhaeng Hhjian #include<bits/stdc++.h> using namespace std; const int N=100; const int MAX=1000; int book[N], cnt; struct node{

溫習Algs4 ():有向圖, 排序和強連通分量

有向圖, 拓撲排序和強連通分量 有向圖 Digraph.java 有向環 DiCycle.java 深度優先搜尋序列 DFSOrder.java 拓撲排序 Topo

7-12 How Long Does It Take 25 分)排序)+超詳細註釋

Given the relations of all the activities of a project, you are supposed to find the earliest completion time of the project. Input Specification: