当前位置: 首页 > news >正文

企业网站的制作周期wordpress添加数据库表

企业网站的制作周期,wordpress添加数据库表,搜狗收录提交申请,wordpress ios app传送门 题目大意#xff1a; 给你一些密码片段字符串#xff0c;让你求长度为n#xff0c;且至少包含k个不同密码片段串的字符串的数量。 题解#xff1a; 因为密码串不多#xff0c;可以考虑状态压缩 设dp[i][j][sta]表示长为i的字符串匹配到j节点且状态为sta的数量。 其…传送门 题目大意 给你一些密码片段字符串让你求长度为n且至少包含k个不同密码片段串的字符串的数量。 题解 因为密码串不多可以考虑状态压缩 设dp[i][j][sta]表示长为i的字符串匹配到j节点且状态为sta的数量。 其中sta存储的是包含的密码串情况在构建fail指针时当前节点要并上fail指针所指的节点。 跑ac自动机儿子节点从父亲节点转移。 最后取dp[len][...][sta]的和其中sta满足二进制中1的数量k 这一点可以像树状数组的lowbit那样快速求出: inline int count(int x){int ret 0;while(x){ret;x - (x -x);}return ret; } code #includeiostream #includecstdio #includecstdlib #includecstring #includestring #includealgorithm #includequeue using namespace std; const int N 20, L 20, Mod 20090717; int n, m, k, tot; long long dp[30][110][1100], ans; char s[20]; queueint que; struct node{int trans[27];int fail, no;int state;inline void clear(){memset(trans, 0, sizeof trans);fail state no 0;} }trie[1010]; inline int getVal(char st){return st - a 1; } inline void insert(int num){int len strlen(s 1), pos 1;for(int i 1; i len; i){int val getVal(s[i]);if(!trie[pos].trans[val])trie[trie[pos].trans[val] tot].clear();pos trie[pos].trans[val];}trie[pos].state | 1 num; } inline void buildFail(){for(int i 1; i 26; i) trie[0].trans[i] 1;que.push(1);while(!que.empty()){int u que.front(); que.pop();for(int i 1; i 26; i){int v trie[u].fail;while(!trie[v].trans[i]) v trie[v].fail;int w trie[u].trans[i];v trie[v].trans[i];if(w){trie[w].fail v;que.push(w);trie[w].state | trie[v].state;}else trie[u].trans[i] v;}} } inline int count(int x){int ret 0;while(x){ret;x - (x -x);}return ret; } inline void solve(){memset(dp, 0, sizeof dp);int limit 1 m;dp[0][1][0] 1;for(int i 1; i n; i)for(int j 1; j tot; j)for(int sta 0; sta limit; sta)if(dp[i - 1][j][sta])for(int l 1; l 26; l){int u trie[j].trans[l];dp[i][u][sta | trie[u].state] (dp[i][u][sta | trie[u].state] dp[i - 1][j][sta]) % Mod;}for(int i 1; i tot; i)for(int sta 0; sta limit; sta){if(count(sta) k)ans (ans dp[n][i][sta]) % Mod;} } int main(){while(scanf(%d%d%d, n, m, k), n m k){trie[tot 1].clear(); ans 0;for(int i 1; i m; i){scanf(%s, s 1);insert(i - 1);}buildFail();solve();cout ans endl;} } 转载于:https://www.cnblogs.com/CzYoL/p/7450429.html
http://www.zqtcl.cn/news/235662/

相关文章:

  • 建设企业网站的原因网站开发项目经验和教训
  • 京东网站的建设与发展现状分析手机与pc网站同步模板
  • 枣阳网站建设吧yw最新域名备案查询
  • 西安知名网站建设公司什么网站可以分享wordpress
  • ugc网站开发2022恢复线下教学通知
  • 网站界面尺寸珠海网站建设制作哪家专业
  • 上海闸北城市建设有限公司网站想学设计没有基础怎么办
  • 免费微网站哪个好用在线网页代理浏览免费
  • 广州建设专业网站寻找做项目的网站
  • 湛江网站建设方案服务卖wordpress主题
  • 扬州做网站的网络公司wordpress设置登录背景图片
  • 有哪些好的网站建设移动网站建设解决方案
  • 江苏网站建设公司排名高校门户网站建设问题
  • 网站怎么加关键词视频网站程序
  • 建设网站需要的人员及资金建设一个网站的具体流程
  • 北京长空建设有限公司网站网站开发制作培训学校
  • 哪些网站可以免费做推广呢o2o营销模式
  • 注册网站的流程南京今天的最新消息
  • 做网站的没有进项票怎么办张家口市一建公司官网
  • 建设网站的本质智慧团建手机版
  • 嘉兴网站建设有前途吗沈阳男科医院排名10强名单公布
  • 手机网站变灰17种新型商业模式
  • 图书网站开发需求文档模板做网站现在用什么语言
  • 创建网站主题在哪里接单赚钱平台
  • 企业做网站的流程权威发布新闻的含义
  • 国外大型购物网站桂林视频网站制作
  • 平度那里有做网站的网站设计技术入股
  • 张家港专业做网站网站设计与建设ppt
  • 香奈儿网站设计分析网站建设新闻发布注意事项
  • 建设网站策划南京网站开发建设