Điểm:
100 (p)
Thời gian:
1.0s
Bộ nhớ:
256M
Input:
bàn phím
Output:
màn hình
Trong máy tính, để tiết kiệm bộ nhớ, người ta thường tìm cách nén dữ liệu. Trong việc nén văn bản, ta sư dụng một phương pháp đơn giản đươc mô tả thông qua ví dụ sau:
Ví dụ:
Với xâu ký tự: "aaaabbb" sẽ được nén lại thành xâu "4a3b". Với xâu ký tự "aaab" sẽ được nén lại thành "3ab".
Cho một xâu \(S\) gồm các ký tự thuộc tập \('a'...'z'\). Gọt \(St\) là xâu nén của xâu \(S\) theo phương pháp được mô tả như trên. Xâu \(St\) gồm \(N\) ký tự thuộc tập các ký tự \('a'...'z'\), \('0',...'9'\)
Hãy giải nén xâu \(St\) để được xâu gốc \(S\).
Input
- Một xâu ký tự \(St\).
Output
- Một xâu ký tự \(S\) sau khi giải nén.
- Đề đảm bảo số lượng kí tự sau khi giải nén không quá \(10^{7}\).
Constraints
- \(1 \leq N \leq 10000\)
Example
Test 1
Input
2m2a3b4ezh
Output
mmaabbbeeeezh
Bình luận
include <iostream>
using namespace std;
int main()
{
string s;
cin >> s;
int d = 0;
for (int i = 0; i < s.size(); i++)
{
if (isdigit(s[i]))
{
d = d * 10 + s[i] - '0';
}
else
{
if (d == 0)
{
cout << s[i];
continue;
}
for (int j = 1; j <= d; j++) cout << s[i];
d = 0;
}
}
}
1 bình luận nữa