55pts求助
查看原帖
55pts求助
310621
XS1509005093楼主2021/1/30 08:21

WA:#2#4#5#9#10#12#13#15#20

#2我下了数据

in:50007008000000

out:80070005

本地测通过 洛谷上不通过

Code:

#include<bits/stdc++.h>
using namespace std;
int main()
{
	string s;cin>>s;
	int cd=s.length();
	bool flag=true;
	bool rd=false;
	int wz=s.find(".");
	int wz1=s.find("/");
	int wz2=s.find("%");
	if(wz==s.npos)
	{
		if(wz1==s.npos&&wz2==s.npos)
		{
			flag=false;
		}
		else
		{
			if(wz2!=s.npos)
			{
				wz=wz2;
				rd=true;
			}
			else
			{
				wz=wz1;
			}
		}
	} 
	int srwz,scwz;
	if(flag)
	{
		reverse(s.begin(),s.begin()+wz);
		if(!rd)
		{
			reverse(s.begin()+wz+1,s.end());
		}
		scwz=cd;
		srwz=0;
		for(int i=0;i<wz;i++)
		{
			if(s[i]=='0')
			{
				srwz++;
			}
			else
			{
				break;
			}
		}
		if(!rd)
		{
			for(int i=cd-1;i>wz;i--)
			{
				if(s[i]=='0')
				{
					scwz--;
				}
				else
				{
					break;
				}
			}
		}
		for(int i=srwz;i<scwz;i++)
		{
			cout<<s[i];
		}
		return 0;
	}
	reverse(s.begin(),s.end());
	for(int i=0;i<cd;i++)
	{
		if(s[i]=='0')
		{
			srwz++;
		}
		else
		{
			break;
		}
	}
	for(int i=srwz;i<cd;i++)
	{
		cout<<s[i];
	} 
	return 0;
}
2021/1/30 08:21
加载中...