摘要:
链接当时是因为没有做出来这道题才开了自动机的专题,现在看看还是比较简单的。因为每个病毒串只算一次,只有10个病毒串,可以状压一下哪些状态是可以达到的,最后取一个最大值。 1 #include 2 #include 3 #include 4 #include 5 #include 6 #... 阅读全文
摘要:
链接这个题把病毒分为了两种,一种包含可以覆盖,另一种不可以,需要分别求出包含他们的个数,可以把两种都建在一颗tire树上,在最后求得时候判断一下当前节点是属于哪种字符串,如果是不包含的需要判断一下pre[i]+len[i] 2 #include 3 #include 4 #include 5... 阅读全文
摘要:
链接这个题把病毒分为了两种,一种包含可以覆盖,另一种不可以,需要分别求出包含他们的个数,可以把两种都建在一颗tire树上,在最后求得时候判断一下当前节点是属于哪种字符串,如果是不包含的需要判断一下pre[i]+len[i] 2 #include 3 #include 4 #include 5... 阅读全文
摘要:
链接从开始节点往下走,不能走到病毒节点,如果当前状态与原始串不一样就+1,取一个最小值. 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #incl... 阅读全文
摘要:
链接dp[i][j]表示长度为i在节点J的时候的权值最大值,根据trie树转移一下就行,需要每次都取最小的,所以需要另开一数组保存字典序最小的状态。 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7... 阅读全文