【47.92%】【hdu 5763】Another Meaning

Time Limit: 2000/1000 MS (Java/Others)????Memory Limit: 65536/65536 K (Java/Others)
Total Submission(s): 1440????Accepted Submission(s): 690


Problem Description
As is known to all, in many cases, a word has two meanings. Such as “hehe”, which not only means “hehe”, but also means “excuse me”.?
Today, ?? is chating with MeiZi online, MeiZi sends a sentence A to ??. ?? is so smart that he knows the word B in the sentence has two meanings. He wants to know how many kinds of meanings MeiZi can express.

Input
The first line of the input gives the number of test cases T; T test cases follow.
Each test case contains two strings A and B, A means the sentence MeiZi sends to ??, B means the word B which has two menaings. string only contains lowercase letters.

Limits
T <= 30
|A| <= 100000
|B| <= |A|


Output
For each test case, output one line containing “Case #x: y” (without quotes) , where x is the test case number (starting from 1) and y is the number of the different meaning of this sentence may be. Since this number may be quite large, you should output the answer modulo 1000000007.

Sample Input
4 hehehe hehe woquxizaolehehe woquxizaole hehehehe hehe owoadiuhzgneninougur iehiehieh

Sample Output
Case #1: 3 Case #2: 2 Case #3: 5 Case #4: 1
Hint
In the first case, “ hehehe” can have 3 meaings: “*he”, “he*”, “hehehe”. In the third case, “hehehehe” can have 5 meaings: “*hehe”, “he*he”, “hehe*”, “**”, “hehehehe”.

Author
FZU

Source
2016 Multi-University Training Contest 4

【題解】

設c[i]表示前i個字符能組成多少種不同意思。

c[0..lens]初值為1;

c[i] += c[i-1]-1 (不取其特殊意思);

c[i] += c[i-lenb] (如果存在。則取其特殊意思);

abcdefgh

efgh

對于這樣的輸入

c[4]代表的是不取特殊意思的。==1

然后從c[4]可以推到c[4+lenb]

即c[4+lenb]+=c[4];

可以理解為

abcd****

abcdefgh這兩種。

至于怎么取一個合適的位置做這樣的推導。KMP

【代碼】

#include <cstdio>
#include <cstring>const int MAX_SIZE = 101000;
const int MOD = 1000000007;int t;
int f[MAX_SIZE],c[MAX_SIZE];
char  s[MAX_SIZE], p[MAX_SIZE];
bool can[MAX_SIZE];
int lens, lenp;void init()
{memset(f, 0, sizeof(f));memset(c, 0, sizeof(c));memset(can, false, sizeof(can));
}void input_data()
{scanf("%s", s);scanf("%s", p);f[0] = 0; f[1] = 0;lens = strlen(s);lenp = strlen(p);for (int i = 1; i <= lenp - 1; i++){int j = f[i];while (j && (p[i] != p[j])) j = f[j];f[i + 1] = (p[j] == p[i] ? j + 1 : 0);}int j = 0;for (int i = 0; i <= lens - 1; i++){while (j && (p[j] != s[i]))j = f[j];if (p[j] == s[i]) j++;if (j == lenp)can[i - lenp + 1] = true;}
}void get_ans()
{for (int i = 0; i <= lens; i++)c[i] = 1;for (int i = 0; i <= lens; i++){if (i)c[i] = (c[i] + c[i - 1] - 1) % MOD;if (can[i])c[i + lenp] = (c[i+lenp] + c[i]) % MOD;}
}void output_ans()
{printf("%d\n", c[lens]);
}int main()
{//freopen("F:\\rush.txt", "r", stdin);scanf("%d", &t);for (int i = 1; i <= t; i++){printf("Case #%d: ", i);init();input_data();get_ans();output_ans();}return 0;
}


轉載于:https://www.cnblogs.com/AWCXV/p/7632243.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/454477.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/454477.shtml
英文地址,請注明出處:http://en.pswp.cn/news/454477.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

root用戶登錄mysql后新建用戶提示1045錯誤

執行以下命令查看root權限 show grants for rootlocalhost; 如果沒有顯示with grant option,說明是root沒有擁有新建授權用戶的權限&#xff08;為什么會這樣呢&#xff0c;因為我把userroot and hostlocalhost給刪掉了&#xff0c;然后重新授權all privileges給新建root用戶&a…

Flask werkzeug 源碼解析

Flask werkzeug流程大概&#xff1a;執行run_simple &#xff0c;實際執行為先用make_server 創建一個 BaseServer 實例&#xff0c;然后執行 實例的serve_forever 方法, serve_forever 調用 run_simple 傳入的第三個參數&#xff0c;執行(self, environ, start_response) &am…

AVS 幀內預測模式的匯編優化

王瑞&#xff0a;基金項目&#xff1a;本課題得到國家自然科學基金資助項目基金&#xff08;項目編號&#xff1a;60772101&#xff09;的資助。作者簡介&#xff1a;王瑞&#xff08;1986—&#xff09;, 男, 山東萊蕪人, 碩士, 主要從事視頻壓縮方面的研究. E&#xff0d;mai…

ltsc系統激活_WIN10_X64企業版LTSC 電腦公司裝機版 202008

文件: WIN10_X64_LTSC_ZJ202008.esd大小: 7431429353 字節(6.92G)MD5: A3A3B15ED47216E177C924D2E07E0799SHA1: 3A647265E0C8234225C633407093BAA07253FB34CRC32: 32E791E9(注意&#xff0c;下載文件有一定幾率損壞&#xff0c;如文件值不對請重新下載&#xff01;)360安全云盤…

大學計算機應用基礎考試題庫,大學計算機應用基礎考試題庫

綜合模擬(四)一、選擇題。1、完整的計算機硬件系統一般包括外部設備和 C 。A、運算器的控制器 B、存儲器 C、主機 D、中央處理器2、計算機能夠自動工作&#xff0c;主要是因為采用了 D 。A、二進制數制 B、高速電子元件 C、存儲程序控制 D、程序設計語言3、下面哪能一組是系統軟…

Lombok 使用小結

Lombok 使用小結 Lombok 簡介Lombok 安裝Lombok 使用 API示例示例源碼引用和引申Lombok 簡介 Lombok 是一種 Java 實用工具&#xff0c;可用來幫助開發人員消除 Java 的冗長&#xff0c;尤其是對于簡單的 Java 對象&#xff08;POJO&#xff09;。它通過注釋實現這一目的。通過…

html表單input file,input標簽type=file的文件上傳

一&#xff0c;通過表單提交的方式該提交方式只是提交普通表單&#xff1b;對于file組所選中的文件內容是不上傳的&#xff0c;因此需要設置&#xff1a;enctype屬性enctype"multipart/form-data"如果想上傳多文件&#xff0c;可添加multiple二&#xff0c;通過Ajax異…

AVS游程解碼、反掃描、反量化和反變換優化設計

中圖分類號:TN919.81   文獻標識碼:A   文章編號:1009-2552 (2007) 02-0054-04AVS游程解碼、反掃描、反量化和反變換優化設計趙 策, 劉佩林(上海交通大學電子工程系, 上海200240)摘 要: 提出了一種適用于AVS的游程解碼、反掃描、反量化和反變換硬件結構優化設計方案。根據…

Django REST framework介紹

現在前后端分離的架構設計越來越流行&#xff0c;業界甚至出現了API優先的趨勢。 顯然API開發已經成為后端程序員的必備技能了&#xff0c;那作為Python程序員特別是把Django作為自己主要的開發框架的程序員&#xff0c;Django REST framework&#xff08;DRF&#xff09;這個…

zabbix 安裝_安裝zabbix

準備一個純凈環境10.0.0.99首先修改yum源&#xff0c;修改為zabbix清華源&#xff0c;清華源玉zabbix官方源都是同步的&#xff0c;下載速度更快&#xff01;zabbix官方Download Zabbix?www.zabbix.com點擊下載&#xff0c;下面有zabbix的歷史版本以及官方安裝文檔可以查看到不…

拓展歐幾里得 [Noi2002]Savage

對于一個野人&#xff0c;他&#xff08;她&#xff1f;&#xff09;所在的位置&#xff0c;&#xff08;C[i]x*p[i]&#xff09;%ans,是的&#xff0c;暴力枚舉每一個ans&#xff0c;用拓展歐幾里得求出每兩個wildpeople(wildrage?)相遇的年份&#xff0c;如果小于最小的壽限…

CCNP-19 IS-IS試驗2(BSCI)

CCNP-19 IS-IS試驗2 實驗拓撲&#xff1a;試驗要求&#xff1a;R1 R2 R3全部采用集成的ISIS路由協議&#xff0c;R1 R2在區域49.0001內&#xff0c;R3在區域49.0002內&#xff0c;R1與R2之間的鏈路類型為L1&#xff0c;R2與R3之間的鏈路類型為L2。 試驗目的&#xff1a;掌握基…

正道的光用計算機,正道的光作文500字

當那熟悉的轟天巨雷般的呼嚕聲響起&#xff0c;我就知道&#xff0c;這又是睡不著的一天。同樣在宿舍&#xff1b;同樣是小翟&#xff1b;同樣的時間&#xff1b;同樣在我昏昏欲睡的時候&#xff0c;那個熟悉的呼嚕聲&#xff0c;它又來了。它將我從即將到來的美夢中驚醒了&…

AVS高清立體視頻編碼器

一、成果項目背景 電視技術在經歷了從黑白到彩色、從模擬到數字的技術變革之后正在醞釀另一場技術革命&#xff0c;從單純觀看二維場景的平面電視跨越到展現三維場景的立體電視。立體電視&#xff0c;又稱三維電視(3DTV)&#xff0c;提供了更為豐富的視覺信息和更具臨場感的觀…

RESTful介紹

RESTful介紹 REST與技術無關&#xff0c;代表的是一種軟件架構風格&#xff0c;REST是Representational State Transfer的簡稱&#xff0c;中文翻譯為“表征狀態轉移”或“表現層狀態轉化”。阮一峰 理解RESTful架構 RESTful API設計指南 阮一峰 RESTful設計指南 API與用戶…

dijkstra算法代碼_數據科學家需要知道的5種圖算法(附代碼)

在本文中&#xff0c;我將討論一些你應該知道的最重要的圖算法&#xff0c;以及如何使用Python實現它們。作者&#xff1a;AI公園導讀因為圖分析是數據科學家的未來。作為數據科學家&#xff0c;我們對pandas、SQL或任何其他關系數據庫非常熟悉。我們習慣于將用戶的屬性以列的形…

大暴搜 chess

仔細讀題&#xff0c;會發現吃掉敵人點對方案數的貢獻很神奇。如果走的空格相同&#xff0c;而走的敵人點不同&#xff0c;對答案無貢獻&#xff0c;而對于走的空格相同&#xff0c;但一種走了敵人點&#xff0c;另一種沒走&#xff0c;算兩個方案。。。。sb出題人語文簡直是和…

網站的SEO以及它和站長工具的之間秘密

博客遷移沒有注意 URL 地址的變化&#xff0c;導致百度和 google 這兩只爬蟲引擎短時間內找不到路。近段時間研究了下國內最大搜索引擎百度和國際最大搜索引擎google的站長工具&#xff0c;說下感受。 百度的站長工具地址&#xff1a;http://zhanzhang.baidu.com/dashboard/ind…

html 縮略圖點擊預覽,[每天進步一點點~] uni-app 點擊圖片實現預覽圖片列表

點擊圖片&#xff0c;實現預覽圖片功能&#xff0c;并且可循環預覽圖片列表&#xff01;image.png一、多張圖片預覽html代碼js代碼data(){return {photos:[{ src: 圖片路徑1},{ src: 圖片路徑2},{ src: 圖片路徑3},……]}},methods: {// 預覽圖片previewImage(index) {let phot…

git ssh拉取代碼_阿里云搭建git服務器

一.搭建步驟&#xff0c;分為兩步搭建中心倉庫自動同步代碼到站點目錄二.詳細步驟如下1.先檢查一下服務器上有沒有安裝gitgit --version如果出現版本號&#xff0c;說明服務器已經安裝git&#xff0c;如圖所示&#xff1a;2.如果沒有版本信息&#xff0c;則先安裝git&#xff1…