<swustoj>?id=190 游程编码
链接http://acm.swust.edu.cn/problem/190/
#include <stdio.h> #include <string.h> int main() { char str[105]; int i; while(scanf("%s",str)!=EOF) { int k=0; char a[105]={'\0'}; int b[105]={0}; for(i=0;i<strlen(str);i++) { if(i==0||str[i]==str[i-1]) { b[k]++; a[k]=str[i]; } else { if(str[i]!=str[i+1]) { k++; a[k]=str[i]; } else { k++; } } } for(i=0;i<=k;i++) { if(i==0) { printf("%d%c",b[i],a[i]); } else { printf("%d%c",b[i]+1,a[i]); } } printf("\n"); } return 0; }