当前位置: 代码迷 >> 综合 >> PAT (Basic Level) 1078 字符串压缩与解压
  详细解决方案

PAT (Basic Level) 1078 字符串压缩与解压

热度:81   发布时间:2024-01-27 01:59:02.0

题意

字符串压缩与解压缩。

思路

模拟即可。

代码

#include <bits/stdc++.h>
using namespace std;
int main() {ios::sync_with_stdio(false);cin.tie(nullptr);cout.tie(nullptr);char c;cin >> c;cin.ignore(1);string s;getline(cin, s);if (c == 'C') {for (int i = 0, j = 0; i < s.size(); i = j) {while (j < s.size() && s[j] == s[i]) j++;if (j - i == 1)cout << s[i];else cout << j - i << s[i];}}else {for (int i = 0; i < s.size(); ++i) {if (!isdigit(s[i])) {cout << s[i];continue;}int num = 0, j = i;while (isdigit(s[j])) num = num * 10 + s[j++] - '0';for (int k = 0; k < num; ++k) cout << s[j];i = j;}}return 0;
} 

HINT

不定时更新更多题解,Basic Level 全部AC代码,详见 link ! ! !

  相关解决方案