首页 > I love you
头像 RandolphJ
发表于 2020-01-31 22:27:48
《爱》 (罗伊·克里夫特创作诗歌) 参看小白月赛3的B题,只不过这里的字符串变长了一些,注意iloveyou作为子序列出现不一定是连续的。用f[i]表示iloveyou匹配了前i个的字符的子序列数,当遇到第i个字符,则之前匹配了前i-1个的字符的子序列都可以变为匹配了前i个的字符的子序列,即f[i] 展开全文
头像 usx21332
发表于 2022-01-12 13:30:01
这个题目的话开两个数组。一个字符串数组存放要查找的内容。由于题目中说了查找的为子序列,那么这时候需要另一个数组res[]来统计前面出现的次数。其中**res[j]+res[j-1]**这个相加操作可以确保子序列中的两个字母是连在一起的。这样的话最后的累加和即为答案。 代码如下: #include # 展开全文
头像 usx21145328
发表于 2022-01-10 20:30:44
开一个数组存放iloveyou的各位字符,开一个res[]数组,表示此时连接到这个字母的数有多少个,比如:res[2]=10,那么就表示此时为il的序列有10个。如果遇到了其中字符之一,假设为第j个,那么就把res[j]加上res[j-1],因为res[j-1]的值是按照iloveyou的顺序排的序 展开全文
头像 Bernard5
发表于 2020-05-12 20:16:28
用dp来推断子序列个数 if (s[i] >= &#39;A&#39; && s[i] <= &#39;Z&#39;) s[i] += 32;统一小写,大小写不敏感。 dp[j] = dp[j] + (s[i] == a[j]) * dp[ 展开全文
头像 如歌丶
发表于 2022-04-07 08:28:40
链接:https://ac.nowcoder.com/acm/contest/20960/1013 来源:牛客网 题目描述 此时相望不相闻,愿逐月华流照君。 一纸情书,到底蕴含了多少倍的爱情呢? I love you, not only for what you are, but for what 展开全文