失踪的7

直接找pascal的n以内的最大值

由于需要删除7(单位大于7就减,小于7直接用),所以可以把十进制转换为去除7的模拟九进制。

#include <bits/stdc++.h>

using namespace std;

#define ll long long

int main() {
    int t;
    cin >> t;
    while(t--)
    {
        string s;
        cin >> s;
        ll result = 0;
        for(char c : s)
        {
            int dig = c-'0';
            if(dig > 7) dig--;
            result = result*9 + dig;
        }
        cout << result << "\n";
    }
    return 0;
}