首页 > 代码库 > HD-ACM算法专攻系列(4)——A == B ?
HD-ACM算法专攻系列(4)——A == B ?
题目描述:
源码:
/**/ #include"iostream" #include"string" using namespace std; string Standard(string str) { int start; int len = str.length(); char * p = new char[len + 2]; start = 0; if(str[0] == ‘-‘ || str[0] == ‘+‘) { p[0] = str[0]; start = 1; } else { p[0] = ‘+‘; } for(int i = start; i < len; i++) { if(str[i] == ‘0‘) { start++; } else { break; } } bool hasDot = false; for(int i = start; i < len; i++) { if(str[i] == ‘.‘) { hasDot = true; break; } } if(hasDot) { for(int i = len - 1; i >= start; i--) { if(str[i] == ‘0‘) { len--; } else { break; } } } int index = 1; if(str[len - 1] == ‘.‘) { len--; } for(int i = start; i < len; i++) { p[index++] = str[i]; } p[index] = ‘\0‘; return string(p); } int main() { string a, b; while(cin>>a>>b) { a = Standard(a); b = Standard(b); if(a == b) { cout<<"YES"<<endl; } else { cout<<"NO"<<endl; } } return 0; }
HD-ACM算法专攻系列(4)——A == B ?
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。