首页 > 代码库 > A == B ?(杭电2054)
A == B ?(杭电2054)
A == B ?
Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 64239 Accepted Submission(s): 10060
Problem Description
Give you two numbers A and B, if A is equal to B, you should print "YES", or print "NO".
Input
each test case contains two numbers A and B.
Output
for each case, if A is equal to B, you should print "YES", or print "NO".
Sample Input
1 2 2 2 3 3 4 3
Sample Output
NO YES YES NO/*第一次做总是将题目理解的过于简单,看过讨论区后 才知道要考虑很多种情况,对于这道题的hdoj只需要去掉 小数点后无意义的0就可以AC,而不需要考虑整数部分无意义 的0,不知道为啥。 */ #include<stdio.h> #include<string.h> char a[40000],b[40000]; void pop(char *s) //去掉字符串小数部分没有意义的0。 { int i,len=strlen(s)-1; for(i=len;i>=0;i--) { if(s[i]=='0') len--; else break; } if(s[i]=='.')//如果像9.00这样的数,小数点则也需要去掉。 len--; s[len+1]='\0'; } int main() { int i; while(scanf("%s %s",a,b)!=EOF) { for(i=0;i<strlen(a);i++) { if(a[i]=='.') pop(a); } for(i=0;i<strlen(b);i++) { if(b[i]=='.') pop(b); } if(strcmp(a,b)) printf("NO\n"); else printf("YES\n"); } return 0; }
A == B ?(杭电2054)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。