最后一个测试点一直不对,求各位大佬帮我看看
#include<bits/stdc++.h>
using namespace std;
string s,a,b;
int size,i;
int main()
{
cin>>s;
while(s[0]==0&&s.size()>1) s.erase(s.begin());
size=s.size();
if(s.find(".")!=string::npos)
{
for(i=s.find(".")-1;i>=0;i--)
if(a!=""||s[i]!='0') a+=s[i];
for(i=s.find(".")+1;i<size;i++)
if(b!=""||s[i]!='0') b=s[i]+b;
if(a=="") cout<<"0";
cout<<a<<"."<<b;
if(b=="") cout<<"0";
cout<<endl;
}
else if(s.find("/")!=string::npos)
{
for(i=s.find("/")-1;i>=0;i--)
if(a!=""||s[i]!='0') a+=s[i];
for(i=size-1;i>s.find("/");i--)
if(b!=""||s[i]!='0') b=b+s[i];
if(a=="") cout<<"0";
cout<<a<<"/"<<b;
if(b=="") cout<<"0";
cout<<endl;
}
else
{
for(i=size-2;i>=0;i--)
if(a!=""||s[i]!='0') a+=s[i];
if(s[size-1]!='%'&&(s[size-1]!='0'||size==1)||size==2)
cout<<s[size-1];
cout<<a;
if(s[size-1]=='%') cout<<"%";
cout<<endl;
}
return 0;
}