1078. 字符串压缩与解压 (20)
2017-12-16 21:30
375 查看
题目地址:1078. 字符串压缩与解压 (20)
#include <bits/stdc++.h> using namespace std; string decompressed(string line) { string ans; for(size_t i=0;i<line.size();++i) { if(line[i]>='0'&&line[i]<='9') { string w; while(line[i]>='0'&&line[i]<='9'&&i<line.size()) w+=line[i++]; ans+=string(stoi(w),line[i]); } else ans+=line[i]; } return ans; } string compressed(string line) { string ans; for(size_t i=0;i<line.size();++i) { char w=line[i]; auto next=i+1; while(next<line.size()&&line[next]==w)++next; if(next-i>1) ans+=to_string(next-i); ans+=w; i=next-1; } return ans; } int main() { char opt; string line,ans; cin>>opt; cin.get(); getline(cin,line); if(opt=='C') ans=compressed(line); else ans=decompressed(line); cout<<ans; return 0; }
相关文章推荐
- 1078. 字符串压缩与解压 (20)
- 1078. 字符串压缩与解压 (20)
- 1078. 字符串压缩与解压 (20)-PAT乙级真题
- 1078. 字符串压缩与解压 (20)
- 1078. 字符串压缩与解压 (20)
- 1078. 字符串压缩与解压 (20)
- 1078. 字符串压缩与解压 (20)
- 1078. 字符串压缩与解压 (20)
- 1078. 字符串压缩与解压 (20) PAT乙级真题
- 乙级 PAT 1078. 字符串压缩与解压 (20)
- 1078. 字符串压缩与解压 (20)
- 1078. 字符串压缩与解压 (20)
- 1078. 字符串压缩与解压 (20)
- 1078. 字符串压缩与解压 (20)
- PAT (Basic Level) Practise (中文) 1078. 字符串压缩与解压 (20)
- PAT乙级1078. 字符串压缩与解压 (20)
- 1078. 字符串压缩与解压 (20)
- PAT 乙级 1078. 字符串压缩与解压 (20)
- PAT乙级1078. 字符串压缩与解压 (20)
- 1078. 字符串压缩与解压 (20)(C++)