```cpp
#include<bits/stdc++.h>
using namespace std;
int main()
{
int i,sum=0,x=0;
string num;
cin>>num;
for(int c=0;c<num.length();c++)
{
if(num[c]=='%')
x=1;
if(num[c]=='/')
{
x=2;
i=c;
}
if(num[c]=='.')
{
x=3;
i=c;
}
}
switch(x)
{
case 0:
for(int c=num.length()-1;c>=0;c--)
if(num[c]!='0'||sum!=0)
{
cout<<num[c];
sum++;
}
if(sum==0)
cout<<"0";
break;
case 1:
for(int c=num.length()-2;c>=0;c--)
if(num[c]!='0'||sum!=0)
{
cout<<num[c];
sum++;
}
if(sum==0)
cout<<"0";
cout<<num[num.length()-1];
break;
case 2:
for(int c=i-1;c>=0;c--)
if(num[c]!='0'||sum!=0)
{
cout<<num[c];
sum++;
}
if(sum==0)
cout<<"0";
sum=0;
cout<<num[i];
for(int c=num.length()-1;c>i;c--)
if(num[c]!='0'||sum!=0)
{
cout<<num[c];
sum++;
}
break;
case 3:
for(int c=i-1;c>=0;c--)
if(num[c]!='0'||sum!=0)
{
cout<<num[c];
sum++;
}
if(sum==0)
cout<<"0";
sum=0;
cout<<num[i];
for(int c=num.length()-1;c>i;c--)
if(num[c]!='0')
sum++;
if(sum==0)
cout<<"0";
else
for(int c=num.length()-1;c>i;c--)
{
if(sum==0)
break;
cout<<num[c];
if(num[c]!='0')
sum--;
}
break;
}
return 0;
}
```
求加[团](https://www.luogu.com.cn/team/40101)
by lmyedison @ 2022-01-25 12:03:30
```
#include<iostream>
#include<math.h>
#include<string.h>
using namespace std;
char s[100000];
int main()
{
string a;
cin >> a;
int len = a.size();
int id = -1, flag = 0;
for(int i = 0;i < len;i++)
{
if(a[i] == '%')
{
flag = 4;
id = i;
}
else if(a[i] == '/')
{
flag = 3;
id = i;
}
else if(a[i] == '.')
{
flag = 2;
id = i;
}
}
if(flag == 0)
{
len--;
while(a[len] == '0' && len > 0)
len--;
for(int i = len;i >= 0;i--)
cout << a[i];
}
else if(flag == 2 || flag == 3)
{
int k = id;
id--;
while(id > 0 &&a[id]=='0')
id--;
for(int i =id;i>=0;i--)
cout << a[i];
if(flag == 2)
{
cout << ".";
}
else
{
cout << "/";
}
k++;
len--;
while(k < len&&a[k]=='0')
k++;
while(a[len]=='0'&&len>k)
len--;
for(int i = len;i>=k;i--)
cout << a[i];
}
else if(flag==4)
{
len -=2;
while(a[len]=='0'&&len>0)
len--;
for(int i = len;i>=0;i--)
cout << a[i];
cout << "%";
}
return 0;
}
```
by limingjie2009 @ 2022-01-25 14:02:18