#include <iostream>
#include <vector>
using namespace std;
void print(vector<int> a,string end="\n"){
for (int i=0;i<a.size()-1;i++){
cout<<a[i]<<" ";
}
cout<<a[-1]<<end;
}
int main(){
int N;cin>>N;
vector<int> bits;
int _;
cout<<N<<endl;
for (int i=0;i<N/8;i++){
cin>>_;
for(int j=0;j<8;j++){
bits.push_back(_&1);
_>>1;
}
}
vector<int> ans;
ans.push_back(bits[0]<<7+1);
for(int i=1;i<N;i++){
if (ans[-1]>>7==bits[i]){
ans[-1]++;
}else{
ans.push_back(bits[i]<<7+1);
}
}
print(ans);
return 0;
}
不知道为什么这个程序过不了,用样例8 0测试,总会出现几千万的奇怪中间量,请问能否给予解答,谢谢大佬们