HDU 2054 A==B?
来源:互联网 发布:访问远程oracle数据库 编辑:程序博客网 时间:2024/06/06 02:17
题意:判断两个数字是否相等
解题思路:数字可能很大,所以要用字符串存储,这里需要注意的就是小数点,举个例子:1.300和1.3,要将1.300后面的0去掉,变成1.3,然后进行比较,如果是1.000和1,还要去掉1.000的小数点。这里用到了find函数,如果找不到就会返回string::npos,还用到了一个substr函数,这个函数的作用是复制指定的字符串,例如s1=s.substr(0,len)就是将字符串s从0到len位置的字符复制s1中
代码:
#include <iostream>#include <algorithm>#include <cstring>#include <string>#include <cstdio>#include <cmath>using namespace std;string solve(string s){ int len=s.length(); if(s.find('.')!=string::npos) { for(int i=len-1; s[i]=='0'; i--)len--; s=s.substr(0,len); } if(s[len-1]=='.')s=s.substr(0,len-1); return s;}int main(){ string s1,s2; while(cin>>s1>>s2) { s1=solve(s1); s2=solve(s2); if(s1==s2)cout<<"YES"<<endl; else cout<<"NO"<<endl; } return 0;}
阅读全文
0 0
- HDU 2054 A == B ?
- HDU 2054 A==B
- hdu acm 2054 A == B ?
- hdu - 2054 - A == B ?
- hdu 2054 A == B ?
- Hdu 2054 - A == B ?
- hdu 2054 A == B ?【JAVA】
- hdu 2054 A==B?
- HDU 2054 A == B ?
- hdu 2054 A==B?
- hdu 2054 A == B ?
- HDU--2054 -- A == B ? [字符串]
- HDU 2054 - A == B ?
- HDU 2054 A == B ?
- HDU-2054 A==B?
- HDU 2054 A==B? 大数
- HDU 2054 A == B ?
- hdu 2054A == B ?
- 网易Emmagee简单改造
- Java EE编程技术学习笔记(4)-JDBC
- RxJava倒计时
- Large Division LightOJ
- POJ 3670
- HDU 2054 A==B?
- Linux--进程控制
- 代码片-1】 Servlet学习(一)----Servlet的生命周期以及开发Servlet的三种方法
- 【项目实战】EasyUI Tree树
- 哲学家就餐问题
- redis系列--控制台测试,查看
- minor gc和full gc
- android——闹钟
- 匿名内部类