90分求助 #13#15过不去
查看原帖
90分求助 #13#15过不去
732497
Darling_Fz楼主2023/6/26 18:55
#include <bits/stdc++.h>
using namespace std;
int a[30], flag, flag1, flag2, flag3, flag4;
bool h = false;
char f = '!';
int main(){
	string s;
	cin >> s;
	for (int i = 0; i < s.size(); i++)
		if (s[i] < '0' || s[i] > '9')
		{
			f = s[i];
			flag = i;
			break;
		}
	if (f == '!')
	{
		for (int i = 0; i < s.size(); i++)
			a[i] = s[i] - '0';
		for (int i = s.size() - 1; i >= 0; i--)
		{
			if(a[i] == 0) continue;
			else
			{
				flag3 = i;
				break;
			}
		}
		for (int i = flag3; i >= 0; i--)
			cout << a[i];
	}
	else if (f == '%')
	{
		for (int i = 0; i < s.size() - 1; i++)
			a[i] = s[i] - '0';
		for (int i = s.size() - 2; i >= 0; i--)
		{
			if (a[i] == 0) continue;
			else
			{
				flag4 = i;
				break;
			}
		}
		for (int i = flag4; i >= 0; i--)
			cout << a[i];
		cout << "%";
	}
	else
	{
		for (int i = flag - 1; i >= 0; i--)
		{
			if (s[i] == '0') continue;
			else
			{
				flag1 = i;
				break;
			}
		}
		for (int i = flag1; i >= 0; i--)
			cout << s[i];
		cout << f;
		for (int i = flag + 1; i < s.size(); i++)
		{
			if (s[i] == '0')
				h = true;
			else
			{
				h = false;
				break;
			}
		}
		if (h == true)
		{
			cout << 0;
			exit(0);
		}
		for (int i = flag + 1; i < s.size(); i++)
		{
			if (s[i] == '0') continue;
			else
			{
				flag2 = i;
				break;
			}
		}
		for (int i = s.size() - 1; i >= flag2; i--)
			cout << s[i];
	}
	return 0;
}
2023/6/26 18:55
加载中...