2 条题解
-
-1
方法思路 1.记录字母位置:首先,根据给定的牛文字母表,记录每个字母在字母表中的位置(索引)。 2.遍历字符串:遍历Farmer John听到的字符串,检查每个字符在牛文字母表中的位置。 3.判断是否需要新的一遍:对于字符串中的每个字符,如果它在牛文字母表中的位置不严格大于前一个字符的位置,则说明需要新的一遍字母歌。 4.计数:统计需要新的一遍字母歌的次数,初始遍数为1(至少一遍),每次需要新的一遍时递增计数。 代码:
#include<bits/stdc++.h>
using namespace std;
int main(){
string a,b; cin>>a>>b; int c[26]; for(int i=0;i<26;i++) { c[a[i] - 'a']=i; } if (b.empty()) { cout<<0<<endl; return 0; } int ans=1; int l=c[b[0]-'a']; for (int i=1;i<b.size();i++) { int d=c[b[i]-'a']; if(d<=l) { ans++; } l=d; } cout<<ans<<endl; return 0;}
信息
- ID
- 2820
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 7
- 标签
- 递交数
- 154
- 已通过
- 37
- 上传者