转化为字符串操作,注意111和233案例

#include<iostream>
#include<string>
using namespace std;
string xyy(string s) {贪心找最小
	if(s.size() == 1) return "1";
    for(int i = s.size() - 1; i >= 0; i--) {
        if(s[i] == '0') s[i] = '1';
        else s[i] = '0';
    }
    return s;
}
int main() {
    int t;
    cin >> t;
    while(t--) {
        int x;
        cin >> x;
        string a = to_string(x);
        string s = xyy(a);
        int b = stoi(xyy(a));找出来的最小可能为0如111或者233,实际上应该为2和1
        if(b == 0) {
        	if(a[a.size()-1] == '1')用原字符串判断为0的情况,对111或233这种特判一下
        	printf("%d\n", 2);
			else printf("%d\n", 1);	
		}
		else printf("%d\n", b);不为0就直接输出,题目要求输出无前导0
    }
    return 0;
}