CodeFoeces-618A

题目

原题链接:A. Slime Combining

题意

有n个1,临近的两个相同值v则合并为v+1。

代码

#include
using namespace std;
int main() {
    int n,s[100000]={0};
    cin>>n;
    int l=0;
    while(n--) {
        s[l++]=1;
        while(l>1 && s[l-1]==s[l-2]) {
            s[l-2]++;
            s[l-1]=0;
            l--;
        }
    }
    for(int i=0;i0) printf("%d",s[i]);
        if(i!=l-1) printf(" ");
    }
    return 0;
}

你可能感兴趣的:(CodeFoeces-618A)