社区讨论

65分

P1553数字反转(升级版)参与者 1已保存回复 0

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
0 条
当前快照
1 份
快照标识符
@lu9mask8
此快照首次捕获于
2024/03/27 17:42
2 年前
此快照最后确认于
2024/03/27 20:31
2 年前
查看原帖
CPP
#include<bits/stdc++.h>
using namespace std;
string s1,s2,s,x;
int p,b;
int main(){
	cin>>s;
	for(int i=0;i<s.size();i++){
		if(s[i]>='0'&&s[i]<='9'){
			s1+=s[i];
		}
		else{
			x=s[i];
			p=i;
			break;
		}
	}
	if(x=="/"){
		for(int i=p;i<s.size();i++){
			if(s[i]>='0'&&s[i]<='9'){
				s2+=s[i];
			}
		}
		for(int i=s1.size()-2;i>=0;i--){
			if(s1[i]!='0'){
				b=i;
				break;
			}
		}
		for(int i=b;i>=0;i--){
			cout<<s1[i];
		}
		cout<<x;
		b=0;
		for(int i=s2.size()-1;i>=0;i--){
			if(s2[i]!='0'){
				b=i;
				break;
			}
		}
		for(int i=b;i>=0;i--){
			cout<<s2[i];
		}
	}
	else if(x=="."){
		for(int i=p;i<s.size();i++){
			if(s[i]>='0'&&s[i]<='9'){
				s2+=s[i];
			}
		}
		for(int i=s1.size()-2;i>=0;i--){
			if(s1[i]!='0'){
				b=i;
				break;
			}
		}
		for(int i=b;i>=0;i--){
			cout<<s1[i];
		}
		cout<<x;
		b=0;
		for(int i=s2.size()-2;i>=0;i--){
			if(s2[i]!='0'){
				b=i;
				break;
			}
		}
		for(int i=b+1;i>=0;i--){
			cout<<s2[i];
		}
	}
	else if(x=="%"){
		for(int i=s.size()-2;i>=0;i--){
			if(s[i]!='0'){
				b=i;
				break;
			}
		}
		for(int i=b;i>=0;i--){
			cout<<s[i];
		}
		cout<<"%";
	}
	else{
		for(int i=s.size()-1;i>=0;i--){
			if(s[i]!='0'){
				b=i;
				break;
			}
		}
		for(int i=b;i>=0;i--){
			cout<<s[i];
		}
	}
} 
剩下咋搞

回复

0 条回复,欢迎继续交流。

正在加载回复...