本题的解法实在神奇。

7不存在,那么可能的数位就有:

1,2,3,4,5,6,8,9,0

九种情况。

那么就可以看作是0-8,也就是九进制数。

然后将输入的数看作九进制数转成十进制就好了。

#include<iostream>
#define ll long long int
#define rep(i,a,b) for(int i=(a);i<=(b);i++)
#define dwn(i,a,b) for(int i=(a);i>=(b);i--)
using namespace std;

ll a[320];
int main(){
    int n;
    cin>>n;
    rep(i,1,n){
        if(i-1)cout<<endl;    
        ll cu,ans;
        cin>>cu;
        ans=0;
        int cur=0;
        while(cu)
        a[++cur]=cu%10,cu/=10;
        dwn(j,cur,1){
            if(a[j]>7)a[j]--;
            ans=ans*9+a[j];
        }
        cout<<ans;
    }
    return 0;
}