75分求助
查看原帖
75分求助
589736
bestprogrammer楼主2022/11/28 10:12

第2、3、4、18、20个点WA

#include<bits/stdc++.h>
using namespace std;
#define int long long
int re(string a){
	int n=0;
	for(auto &s: a){
		n=n*10+s-'0';
	}
	if(n%10==0){
		n/=10;
	}
	int sum=0;
	while(n!=0){
		int k=n%10;
		sum=sum*10+k;
		n/=10;
	}
	return sum;
}
signed main(){
	string ss;
	cin>>ss;
	int points=0;
	for(int i=0;i<ss.size();i++){
		if(ss[i]=='.') points=1;
		if(ss[i]=='/') points=2;
		if(ss[i]=='%') points=3;
	}
	if(points==0)
		cout<<re(ss);
	else if(points==1){
		string first,last;
		int j=0;
		for(int i=0;i<=ss.size();i++){
			first=ss.substr(0,ss.find('.'));
			last=ss.substr(ss.find(".")+1);
		}
		cout<<re(first)<<"."<<re(last)<<endl;
	}else if(points==2){
		string first,last;
		int j=0;
		for(int i=0;i<=ss.size();i++){
			first=ss.substr(0,ss.find('/'));
			last=ss.substr(ss.find("/")+1);
		}
		cout<<re(first)<<"/"<<re(last)<<endl;
	}else if(points==3){
		for(int i=ss.size()-1;i>=0;i--){
			if(ss[i]!='%'){
			if(i==ss.size()-2){
				if(ss[i]!='0'){
					cout<<ss[i];
				}
			} 
			else cout<<ss[i];}
		}
		cout<<'%';
	}
	
	return 0;
}

2022/11/28 10:12
加载中...