时间限制:1s 内存限制:512mb 题目描述 字符串 s 是一个仅由英文小写字母构成的串。现在,你可以对字符串 s 执行任意次如下操作: - 选择 s 长度为 4 的一个子串,将其替换为 love。 请问,至少操作多少次,字符串 s 不再有子串 friend。 - 定义:子串指的是一个字符串中连续的一段字符序列。例如,字符串 aabbcc 有子串 aab、aabb,但 abc 不是字符串 aabbcc 的子串,因为其不连续。 输入格式 输入一行一个字符串 s。 输出格式 输出一行一个整数,表示最少操作次数。 样例输入 #1 friend 样例输出 #1 1 样例输入 #2 friendzdxfriend 样例输出 #2 2 提示 对于 100% 的测试数据,1 ≤ |s| ≤ 10^6,s仅由小写英文字母组成。 请用c++解决这道题。
```cpp #include <iostream> #include <string> int minOperations(std::string s) { int count = 0; for (size_t i = 0; i <= s.size() - 4; ++i) { if (s.substr(i, 4) == "friend") { s.replace(i, 4, "love"); count++; i = i + 3; } } return count; } int main() { std::string s; std::cin >> s; std::cout << minOperations(s) << std::endl; return 0; } ``` [2024-08-17 16:29:54 | AI写代码神器 | 153点数解答]
相关提问
- [字节豆包] 时间限制:1s 内存限制:512mb 题目描述 字符串 s 是一个仅由英文小写字母构成的串。现在,你可以对字符串 s 执行任意次如下操作: - 选择 s 长度为 4 的一个子串,将其替换为 love。 请问,至少操作多少次,字符串 s 不再有子串 friend。 - 定义:子串指的是一个字符串中连续的一段字符序列。例如,字符串 aabbcc 有子串 aab、aabb,但 abc 不是字符串 aabbcc 的子串,因为其不连续。 输入格式 输入一行一个字符串 s。 输出格式 输出一行一个整数,表示最少操作次数。 样例输入 #1 friend 样例输出 #1 1 样例输入 #2 friendzdxfriend 样例输出 #2 2 提示 对于 100% 的测试数据,1 ≤ |s| ≤ 10^6,s仅由小写英文字母组成。 请用c++解决这道题。(153点数解答 | 2024-08-17 16:29:54)391
- [讯飞星火] 时间限制:1s 内存限制:512mb 题目描述 字符串 s 是一个仅由英文小写字母构成的串。现在,你可以对字符串 s 执行任意次如下操作: - 选择 s 长度为 4 的一个子串,将其替换为 love。 请问,至少操作多少次,字符串 s 不再有子串 friend。 - 定义:子串指的是一个字符串中连续的一段字符序列。例如,字符串 aabbcc 有子串 aab、aabb,但 abc 不是字符串 aabbcc 的子串,因为其不连续。 输入格式 输入一行一个字符串 s。 输出格式 输出一行一个整数,表示最少操作次数。 样例输入 #1 friend 样例输出 #1 1 样例输入 #2 friendzdxfriend 样例输出 #2 2 提示 对于 100% 的测试数据,1 ≤ |s| ≤ 10^6,s仅由小写英文字母组成。 请用c++解决这道题。(260点数解答 | 2024-08-17 16:30:49)413
- [字节豆包] 字符串 ss 是一个仅由英文小写字母构成的串。现在,你可以对字符串 ss 执行任意次如下操作: 选择 ss 长度为 44 的一个子串,将其替换为 love。 请问,至少操作多少次,字符串 ss 不再有子串 friend。 定义:子串指的是一个字符串中连续的一段字符序列。例如,字符串 aabbcc 有子串 aab、aabb,但 abc 不是字符串 aabbcc 的子串,因为其不连续。 输入格式 输入一行一个字符串 ss。 输出格式 输出一行一个整数,表示最少操作次数。(139点数解答 | 2024-08-18 13:04:14)320
- [GPT] 以读、二进制方式打开c盘temp文件夹下abc.txt文件的代码是()[测3] a. f=open(c:/temp/abc.txt,'bt') b. f=open('c://temp//abc.txt','rb') c. f=open('c:\temp\abc.txt','rb') d. f=open('c:/temp/abc.txt','wb') e. f=open('c:\\temp\\abc.txt','rb') f. f=open('c:/temp/abc.txt','rb') g. f=open('c://temp//abc.txt':'rb') h. f=open('c:\\temp\\abc.txt','ab')(15点数解答 | 2024-06-06 13:53:37)326
- [字节豆包] 三倍子串 内存限制: 256 Mb时间限制: 1000 ms 题目描述 给定一个十进制正整数 n n,请问可以从 n n 中截取多少种不同的子串,使得子串构成的数字是 3 3 的倍数。 例如:当 n = 1234 n=1234 时,有且仅有 3 3, 12 12, 123 123, 234 234 这四个子串是 3 3 的倍数。 输入格式 单个整数:表示输入的数字 n n 输出格式 单个整数:表示 3 3 的倍数的子串数量。 数据范围 对于 20 % 20% 的数据, 1 ≤ n ≤ 1 0 9 1≤n≤10 9 ; 对于 50 % 50% 的数据, 1 ≤ n ≤ 1 0 100 1≤n≤10 100 ; 对于 70 % 70% 的数据, 1 ≤ n ≤ 1 0 1000 1≤n≤10 1000 ; 对于 100 % 100% 的数据, 1 ≤ n ≤ 1 0 100000 1≤n≤10 100000 样例数据 输入: 95764 输出: 6 说明: 子串6,9,57,576,957,9576是3的倍数 输入: 1111 输出: 2 说(486点数解答 | 2025-08-29 11:52:55)142
- [字节豆包] 请你补全代码,把数组a的所有元素都赋值为100。 输入: 无 输出: 共二十行,每行一个整数,为数组中的每个数。 输入样例: 无 输出样例: 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100#include <iostream> using namespace std; int main() { int a[20]; for ( ) { } for (int i = 0; i < 20; i++) { cout << a[i] << endl; } return 0; }(164点数解答 | 2025-11-01 19:14:57)36
- [字节豆包] 提示信息: 密码锁:由 n 个从左到右并排的圆环组成,每个圆环上都有 10 个数字(0~9),蓝色框内为密码显示区,每个圆环在密码显示区只能显示一个数字,如图所示。可以拨动圆环,来改变密码显示区显示的数字。 当密码显示区的数字与密码一致时,密码锁就会被打开。 image 编程实现: 有一个由 n 个圆环组成的密码锁,和一个 n 位的密码 S(S 由 1~9 中的数字(包含 1 和 9)组成)。每次操作只能选择一个或位置连续的多个圆环拨动。当 S 中的字符从左到右依次显示在密码显示区时,密码锁会被打开。 已知每个圆环在密码显示区初始数字都为 0,请计算最少需要操作多少次,才能打开密码锁。 注意: 1、如果选择了其中一个圆环,可将该圆环中任意一个数字拨动到密码显示区,表示 1 次操作; 例如:将第 3 个圆环拨动到数字 4,表示 1 次操作: image 2、如果选择了位置连续的多个圆环,只能将这些圆环拨动成同一个数字,显示在密码显示区,表示 1 次操作。 例如:将连续的第 2 个到第 3 个圆环都拨动到数字 5,表示 1 次操作: image 例如: n = 5,S (377点数解答 | 2025-11-08 22:11:16)30
- [字节豆包] 提示信息: 密码锁:由 n 个从左到右并排的圆环组成,每个圆环上都有 10 个数字(0~9),蓝色框内为密码显示区,每个圆环在密码显示区只能显示一个数字,如图所示。可以拨动圆环,来改变密码显示区显示的数字。 当密码显示区的数字与密码一致时,密码锁就会被打开。 image 编程实现: 有一个由 n 个圆环组成的密码锁,和一个 n 位的密码 S(S 由 1~9 中的数字(包含 1 和 9)组成)。每次操作只能选择一个或位置连续的多个圆环拨动。当 S 中的字符从左到右依次显示在密码显示区时,密码锁会被打开。 已知每个圆环在密码显示区初始数字都为 0,请计算最少需要操作多少次,才能打开密码锁。 注意: 1、如果选择了其中一个圆环,可将该圆环中任意一个数字拨动到密码显示区,表示 1 次操作; 例如:将第 3 个圆环拨动到数字 4,表示 1 次操作: image 2、如果选择了位置连续的多个圆环,只能将这些圆环拨动成同一个数字,显示在密码显示区,表示 1 次操作。 例如:将连续的第 2 个到第 3 个圆环都拨动到数字 5,表示 1 次操作: image 例如: n = 5,S (163点数解答 | 2025-11-15 21:22:40)26
- [字节豆包] 题目描述 给定m行n列的图像各像素点的灰度值,要求用如下方法对其进行模糊化处理: 1.四周最外侧的像素点灰度值不变; 2.中间各像素点新灰度值为该像素点及其上下左右相邻四个像素点原灰度值的平均值(四舍五入)。 输入格式 第一行包含两个整数n和m,表示图像包含像素点的行数和列数。1<=n<=100,1<=m<=100。 接下来n行,每行m个整数,表示图像的每个像素点灰度。相邻两个整数之间用单个空格隔开,每个元素均在0~255之间。 输出格式 m行,每行n个整数,为模糊处理后的图像。相邻两个整数之间用单个空格隔开。 输入样例 4 5 100 0 100 0 50 50 100 200 0 0 50 50 100 100 200 100 100 50 50 100 输出样例 100 0 100 0 50 50 80 100 60 0 50 80 100 90 200 100 100 50 50 100 说明/提示 用c++(655点数解答 | 2025-12-01 14:24:01)14
- [字节豆包] c++ 题目:混合类型数据格式化输入输出 描述:顺序读入浮点数1、整数、字符、浮点数2,其间以1个空格作为分隔符。再按照字符、整数、浮点数1、浮点数2的顺序输出,其中浮点数保留小数点后2位。 输入样例 3.14 100 a 2.71↙ 输出样例 a 100 3.14 2.71↙(187点数解答 | 2024-10-16 14:31:08)292
- [字节豆包] c语言 题目:混合类型数据格式化输入输出 描述:顺序读入浮点数1、整数、字符、浮点数2,其间以1个空格作为分隔符。再按照字符、整数、浮点数1、浮点数2的顺序输出,其中浮点数保留小数点后2位。 输入样例 3.14 100 a 2.71↙ 输出样例 a 100 3.14 2.71↙(159点数解答 | 2024-10-16 14:32:18)291
- [字节豆包] 买二送一 内存限制: 256 Mb时间限制: 1000 ms 题目描述 我们需要买 n n 本书,第 i i 本书的价格为 a i a i 。 现有买二送一的促销活动:凡购买两本书,可以免费带走第三本书,但免费书的价格不能超过两本付费书中任意一本的价格即可。 请问,买下全部的书最少需要多少钱? 输入格式 第一行:单个整数表示 n n; 第二行: n n 个整数表示 a 1 , a 2 , … , a n a 1 ,a 2 ,…,a n 。 输出格式 单个整数:表示将所有书买下的最少钱数。 数据范围 对于 40 % 40% 的分数, 1 ≤ n ≤ 100 1≤n≤100; 对于 70 % 70% 的分数, 1 ≤ n ≤ 5000 1≤n≤5000; 对于 100 % 100% 的分数, 1 ≤ n ≤ 100 , 000 1≤n≤100,000, 1 ≤ a i ≤ 30 , 000 1≤a i ≤30,000。 样例数据 输入: 6 1 3 2 4 5 6 输出: 16 说明: 买2与3,送1; 买5与6,送4。 语言(315点数解答 | 2025-08-14 15:09:51)133