Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
99479 王昭涵 字符串的展开 C++ 解答错误 80 0 MS 268 KB 934 2023-08-22 20:55:11

Tests(8/10):


#include<iostream> #include<cstring> #include<string> using namespace std; int main() { int p1, p2, p3; string s, t; cin >> p1 >> p2 >> p3 >> s; for (int i{}; i < s.size(); i++) { t += s[i]; if (i < s.size() - 2 && s[i + 1] == '-' && s[i] < s[i + 2] && (s[i] >= '0' && s[i + 2] <= '9' || s[i] >= 'A' && s[i + 2] <= 'Z' || s[i] >= 'a' && s[i + 2] <= 'z')) { char a{ s[i] }, b{ s[i + 2] }; string u, v; if (p1 == 1) a = tolower(a), b = tolower(b); if (p1 == 2) a = toupper(a), b = toupper(b); for (char c{ a + 1 }; c < b; c++) for (int i{}; i < p2; i++) u += c; if (p1 == 3) for (int i{}; i < u.size(); i++) v += '*'; else v = u; u = ""; if (p3 == 2) for (int i = v.size() - 1; i >= 0; i--) u += v[i]; else u = v; t += u; t += s[i + 2]; i += 2; } } cout << t; return 0; }


测评信息: