本文共 3270 字,大约阅读时间需要 10 分钟。
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
估计OJ有问题
话说 +0 -0
输出NO
AC我信了但竟然+1和1.0~N0竟然AC了竟然AC了;
啊西巴贼烦,下面有WA版改进了添加+-
号的问题大神帮帮找找BUG。
这时AC版
#include#include #include using namespace std; char a[100000],b[100000]; void change(char s[]) { int i,len; len = strlen(s); if(strstr(s,".")) { for(i = len-1; s[i] == '0'; i--) { s[i] = '\0'; len--; } } if(s[len-1] == '.') s[len-1] = '\0'; } int main() { while(cin>>a>>b) { change(a); change(b); if(strcmp(a,b)) cout<<"NO"<
//这是WA版
本来以为只有正整数没想到还有正负之分所以没包装函数,o(︶︿︶)o 唉后面有时间再修改。各位凑合看,见笑了……
#include#include #include using namespace std; char a[100000],b[100000]; void change(char s[]) { int i,len; len = strlen(s); if(strstr(s,".")) { for(i = len-1; s[i] == '0'; i--) { s[i] = '\0'; len--; } } if(s[len-1] == '.') s[len-1] = '\0'; } int main() { while(cin>>a>>b) { change(a); change(b); if(strcmp(a,b)) cout<<"NO"< #include #include using namespace std; const int maxn = 50000; char a[maxn]; char b[maxn]; bool Pd(char* a, char* b) { assert(a != NULL && b!= NULL); if (a[0] != '-' && b[0] != '-'){ if (a[0] == '+'){ a[0] = '0'; } if (b[0] == '+'){ b[0] = '0'; } return true; } else if (a[0] == '-'){ if (b[0] != '-'){ for (int i = 0; i < strlen(b); ++i){ if (b[i] != '0' && b[i] != '.'&& b[i] != '+') return false; } a[0] = '0'; return true; } else if(b[0] == '-') { a[0] = 0; b[0] = 0; return true; } } else { for (int i = 0; i < strlen(a);++i){ if (a[i] != '0' && a[i] != '.') return false; } b[0] = '0'; return true; } } int main() { memset(a,0,sizeof(a)); memset(b,0,sizeof(b)); while (scanf("%s%s",a,b) != EOF){ if (!Pd(a,b)) printf("NO\n"); else{ int al = strlen(a); int bl = strlen(b); char* sb = strstr(b,"."); char* sa = strstr(a,"."); int sal = 0; int sbl = 0; if (sa) sal = strlen(sa); if (sb) sbl = strlen(sb); string stra; string strb; for (int i = 0; i < al - sal; i++){ if (a[i] != '0'){ stra.push_back(a[i]); } } for (int i = 0; i < bl - sbl; ++i){ if (b[i] != '0'){ strb.push_back(b[i]); } } if (stra != strb) printf("NO\n"); else{ if (sa && sb) { string ssa; string ssb; int flag = 0; for (int i = sal-1; i > 0; --i) { if (sa[i] != '0' || flag){ flag = 1; ssa.push_back(sa[i]); } } flag = 0; for (int i = sbl-1; i > 0; --i){ if (sb[i] != '0' || flag){ flag = 1; ssb.push_back(sb[i]); } } if (ssa != ssb){ printf("NO\n"); } } else if (sa || sb) { if (sa){ for (int i = 1; i < sal; ++i){ if (sa[i] != '0'){ printf("NO\n"); break; } } } else{ for (int i = 1; i < sbl; ++i){ if (sb[i] != '0'){ printf("NO\n"); break; } } } } printf("YES\n"); } } } return 0; }
//有通不过的例子记得发送一下,我自己调调!blbagony@163.com
//搞了一下午真的是心痛
转载地址:http://rtgbb.baihongyu.com/