解题方法:
这就是一个按位匹配,就是他听到的字母一定是有序(按照牛文)的,如果不是,那么就是新唱了一遍。
那么就是一直匹配就行了。
完整代码
#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
int res, r;
string a, b;
int main()
{
cin >> a >> b;
while (r != b.size()) {
for (int i = 0; i < 26; i ++ ) {
if (a[i] == b[r]) r ++;
}
res ++;
}
cout << res << endl;
return 0;
}
不会超时吗
不会的,最多每个字母算一遍字母歌,时间复杂度是 26000
而且写代码之前一定要分析时间复杂度 hh
好的 蟹蟹
大佬真六年级么?薄纱我这个大三伞兵
是的
牛逼。未来可期了属实是
az
赞
为啥我这就超时了
#include[HTML_REMOVED]
#include[HTML_REMOVED]
using namespace std;
string a,b;
int k=1,ans=1;
int main()
{
cin>>a>>b;
for(int i=0;i<26;i){
if(a[i]==b[k]){
k;
}
if(k>=b.size()){
break;
}
if(i==25){
i=0;
ans++;
}
}
cout<<ans;
}
呃,你的markdown呢
学废了 谢谢大佬
不用谢~
代码简洁的我有点看不懂😭
啊这
这个思路nice,我刚开始想到的是trie树,只要注意前一个字母和后一个字母的大小关系即可
题主很有创意hhh😂
hh
那你俩为啥还互粉???
还不算太生气哈哈
额
你们经常吵架哈
啊这
你俩吵n次了
也就2次把
我懂了你的真名叫 张栎岩
你咋知道???
哈哈,咋俩私信,我告诉你
orz
代码很简洁 赞了
我和思路一样,代码思路也差不多
啊这
这思路绝了
你这个我觉得把第一个字符串搞成哈希表就好做了
名字很好,下次不要取了
?
思路清晰了
关于我思路一样 时间超载这件事
+1
+1+1
怎么回事啊
???你们把代码发一下
一样的思路
我也是这样想 但是没写出来
我超思路神乎其技的一致
hh