0分。这肯定不是正解。还输出一堆负数。
#include<bits/stdc++.h>
using namespace std;
int t,n,n1,r0[6],x=1,ans,y=1;
signed main(){
cin>>t;
while(t--){
cin>>n;
n1=n;
while(n1!=0){
r0[x]=n1%10;
x++;
n1/=10;
}
for(int i=1;i<=x;i++){
if(r0[i]!=0&&i!=x){
ans++;
}
}cout<<ans<<endl;
for(int i=1;i<=x;i++){
if(r0[i]!=0&&r0[i]!=x){
cout<<r0[i]*y<<' ';
y*=10;
}
}cout<<endl;
}return 0;
}