水题
#include<bits/stdc++.h>
using namespace std;
int n;
char s[35][10000];
int main() {
//scanf("%d", &n);
s[0][0] = '1';
s[1][0]=s[1][1]='1';
//第n个串就是第n-1个的读法,第一个应设置为11,
while (scanf("%d", &n)) {
for (int i = 2; i < n; i++) {
int cnt = 1;
char x = s[i - 1][0];
for (int j = 1, y = 0; j<strlen(s[i - 1]); j++) {
if (x == s[i - 1][j]) {
cnt++;
}
else if (x != s[i - 1][j]) {
while (cnt > 0) {
char z = cnt % 10 + '0';
cnt /= 10;
s[i][y++] = z;
}
s[i][y++] = x;
x = s[i - 1][j];
cnt = 1;
}
if (j == strlen(s[i - 1]) - 1) {
while (cnt > 0) {
char z = cnt % 10 + '0';
cnt /= 10;
s[i][y++] = z;
}
s[i][y++] = x;
}
}
}
printf("%s\n", s[n - 1]);
}
return 0;
}