【发布时间】:2021-01-20 09:07:39
【问题描述】:
所以我有一个由 N 个字母 'a' 或 'b' 组成的字符串 S。 如果 A 的所有出现都在 b 的所有出现之前,这应该返回 1,否则返回 0。
B不需要出现在S中,A也不需要出现在S中
例如
S='aabbb' returns 1
S = 'ba' returns 0
S = 'aaa' returns 1
S= 'b' returns 1
所以我的方法是在字符串上使用 for 循环并检查 b 是否出现在 a 之前:
char newstr[10] = "aabbba"; //should return 0
int len = strlen(newstr);
for (int i = 0; i < len+1; i++) {
printf("%c", newstr[i]);
if (newstr[i] < 'b') {
printf("1");
}
else {
printf("0");
}
}
输出是a1a1b0b0b0a1 1所以..它部分检测a是否在b之前但不是完全正确的方式。
【问题讨论】:
标签: c find-occurrences letter