|
发表于 2024-4-13 19:35:05
|
显示全部楼层
非常抱歉,我写的代码有一些错误。下面是修正后的示例代码:
A题:
- #include <iostream>
- #include <vector>
- using namespace std;
- string rollString(string s, vector<int> x) {
- int n = s.length();
- for (int i = 0; i < n; i++) {
- // 将字符转换为ASCII码,滚动操作,再转换回字符
- s[i] = (s[i] - 'a' + x[i]) % 26 + 'a';
- }
- return s;
- }
- int main() {
- int t;
- cin >> t; // 数据组数
- while (t--) {
- string s;
- cin >> s; // 字符串
- int n;
- cin >> n; // 整数数组的长度
- vector<int> x(n);
- for (int i = 0; i < n; i++) {
- cin >> x[i]; // 读取整数数组
- }
- string result = rollString(s, x);
- cout << result << endl;
- }
- return 0;
- }
复制代码
B题:
- #include <iostream>
- #include <vector>
- using namespace std;
- void calculateValue(string s, vector<int> x) {
- int n = s.length();
- int start = 0; // 信息段的起始位置
- for (int i = 0; i < n; i++) {
- if (s[i] == '#') {
- if (i - start > 1) { // 如果信息段不为空
- string name = s.substr(start, i - start); // 计算信息段的名字
- int value = accumulate(x.begin(), x.end(), 0); // 计算信息段的权值
- cout << name << " " << value << endl;
- }
- start = i + 1;
- }
- }
- // 处理最后一个信息段
- if (n - start > 1) {
- string name = s.substr(start, n - start); // 计算信息段的名字
- int value = accumulate(x.begin(), x.end(), 0); // 计算信息段的权值
- cout << name << " " << value << endl;
- }
- }
- int main() {
- int t;
- cin >> t; // 数据组数
- while (t--) {
- string s;
- cin >> s; // 字符串
- int n;
- cin >> n; // 整数数组的长度
- vector<int> x(n);
- for (int i = 0; i < n; i++) {
- cin >> x[i]; // 读取整数数组
- }
- calculateValue(s, x);
- }
- return 0;
- }
复制代码
C题:
- #include <iostream>
- #include <algorithm>
- using namespace std;
- bool isPalindrome(string s) {
- int n = s.length();
- for (int i = 0; i < n / 2; i++) {
- if (s[i] != s[n - i - 1]) {
- return false;
- }
- }
- return true;
- }
- int main() {
- string s;
- cin >> s;
- string reversed = s;
- reverse(reversed.begin(), reversed.end());
- if (isPalindrome(s) && s != reversed) {
- cout << "YES" << endl;
- } else {
- cout << "NO" << endl;
- }
- return 0;
- }
复制代码
希望这次的代码能够正确输出结果。如果还有问题,请随时告诉我。
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。 |
|