Are They Equal

#include<bits/stdc++.h>
using namespace std;

int n;

string deal(string s,int & e) {
    int i;
    while(s.size()>0&&s[0]=='0') {
        s.erase(s.begin());
    }
    if(s[0]=='.') {
        s.erase(s.begin());
        while(s.size()>0&&s[0]=='0') {
            s.erase(s.begin());
            e--;
        }
    } else {
        while(i<s.size()&&s[i]!='.') {
            i++;
            e++;
        }
        if(s.size()>i){
            s.erase(s.begin()+i);
        }
    }
    if(s.size()==0) {
        e=0;
    }
    int num=0,k=0;
    string answer;
    while(num<n) {
        if(k<s.size()) {
            answer+=s[k++];
        }
        else{
            answer+='0';
        }
        num++;
    }
    return answer;
}

int main() {
    string s1,s2,s3,s4;
    int e1=0,e2=0;
    while(cin>>n>>s1>>s2) {
        s3=deal(s1,e1);
        s4=deal(s2,e2);
        if(s3==s4) {
            cout<<"YES 0."<<s3<<"*10^"<<e1<<endl;
        } else {
            cout<<"NO 0."<<s3<<"*10^"<<e1<<" 0."<<s4<<"*10^"<<e2<<endl;
        }
    }
    return 0;
}
全部评论
牛啊,我现在都没法静下心写代码
点赞 回复 分享
发布于 2022-10-23 10:46 山西

相关推荐

评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务