本帖最後由 李宗儒 於 2024-5-27 21:49 編輯
- #include<bits/stdc++.h>
- using namespace std;
- int b=0;
- int mx,mn;
- string mx1,mn1;
- int main()
- {
- string a;
- cin>>a;
- mx1=a;
- mn1=a;
- int a1=stoi(a);
- for(int i=0;i<a.size();i++)
- {
- if(int(a[i]-'0')%2!=0)
- {
- continue;
- }
- b++;
- break;
- }
- if(b==0)
- {
- cout<<"0";
- return 0;
- }
- ////////////////////////////////////////////
- b=0;
- for(int i=0;i<3;i++)//min
- {
- a1-=1;
- // cout<<a1<<endl;
- mn1=to_string(a1);
- for(int i=0;i<mn1.size();i++)
- {
- // cout<<mn1[i]<<endl;
- if(int(mn1[i]-'0')%2!=0)
- {
- continue;
- }
- b++;
- break;
- }
- if(b==0)
- {
- break;
- }
- b=0;
- i--;
- }
- //////////////////////////////////////////////
- for(int i=0;i<3;i++)//max
- {
- a1+=1;
- //cout<<a1<<endl;
- mx1=to_string(a1);
- for(int i=0;i<mx1.size();i++)
- {
- // cout<<mx1[i]<<endl;
- if(int(mx1[i]-'0')%2!=0)
- {
- continue;
- }
- b++;
- break;
- }
- if(b==0)
- {
- break;
- }
- b=0;
- i--;
- }
- a1=stoi(a);
- ///////////////////////////////////////////////////////
- // cout<<mn1<<endl;
- mx=stoi(a)-stoi(mx1);
- mn=stoi(mn1)-stoi(a);
- // cout<<mx<<endl;
- // cout<<mn<<endl;
- if(mx<0)
- mx=mx*-1;
- if(mn<0)
- mn=mn*-1;
- if(mx<mn)
- swap(mx,mn);
- cout<<mn;
- return 0;
- }
複製代碼 |