55分求助
查看原帖
55分求助
856098
__UrFnr__楼主2023/4/14 20:15

求助,求助!

有没有大佬知道这道题怎么做?

我的55分代码:
#include<bits/stdc++.h>
using namespace std;
void f0(string s){
	int len = s.length(), mark;
	for(mark=len-1;mark>=0;mark--){
		if(s[mark]!='0')break;
	}
	if(mark ==0){
		cout << s[0];
		return;
	}
	for(int i = mark; i>=0;i--){
		cout << s[i];
	}
}
void f1(string s){
	int m =s.find("."),len=s.length();
	string s1 = s.substr(0,m);
	string s2=s.substr(m+1,len-m-1);
	f0(s1);
	cout<<'.';
	int mark=0;
	for(mark=0;mark<s2.length();mark++){
		if(s2[mark]!='0')break;
	}
	if(mark < 0){
		cout << 0;
		return;
	}
	for(int i=s2.length() - 1;i>=mark;i--){
		cout<< s2[i];
	}
}
void f2(string s){
	int m =s.find("/"),len=s.length();
	string s1 = s.substr(0,m);
	string s2=s.substr(m+1,len-m-1);
	f0(s1);
	cout<<'/';
	f1(s2);
}
void f3(string s){
	int m = s.find("%") , len = s.length();
	string s1 = s.substr(0,m);
	f0(s1);
	cout << '%';
}
int main(){
	string s;
	cin >> s;
	if(s.find("/") != -1){
		f2(s);
	}else if(s.find("%") != -1){
		f3(s);
	}else if(s.find(".") != -1){
		f1(s);
	} else {
		f0(s);
	}
	return 0;
}

希望大佬指导一下!!

2023/4/14 20:15
加载中...