修改这份代码#include <iostream> #include <string> using namespace std; int t, n; string s; bool f; int main() { cin >> t; while (t--) { int ans = 0; f = 1; cin >> n; cin >> s; for (int i = 0; i < n - 1; ++i) { for (int j = 0; j < i; ++j) { if (s[j] == s[i] && s[j + 1] == s[i + 1]) f = 0; } if (f) ans++; } cout << ans << endl; } return 0; }
时间: 2023-12-01 08:03:11 浏览: 66
使用include <iostream>时一定要加using namespace std
代码已修改如下:
```
#include <iostream>
#include <string>
using namespace std;
int t, n;
string s;
int main() {
cin >> t;
while (t--) {
int ans = 0;
bool f = true;
cin >> n >> s;
for (int i = 0; i < n - 1; ++i) {
f = true;
for (int j = 0; j < i; ++j) {
if (s[j] == s[i] && s[j + 1] == s[i + 1]) {
f = false;
break;
}
}
if (f) ans++;
}
cout << ans << endl;
}
return 0;
}
```
修改内容:
1. 删除了多余的空格和换行符,使代码排版更加整洁。
2. 将 `bool f` 的初始化放到了循环内部,以确保每次循环都会重新初始化。
3. 在第二个循环体内加入了一个 `break` 语句,以便在找到重复的子串后立即退出循环,提高效率。
4. 在第二个循环体外部加入了花括号,使代码风格更加规范。
阅读全文