继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

大数——大数判等(hdu2054)

九日王朝
关注TA
已关注
手记 180
粉丝 42
获赞 185

题目链接:

http://acm.hdu.edu.cn/showproblem.php?pid=2054



题目描述:题目比1042还简洁。。我们都知道hdu的11页的水题有多水~所以看到这个之后我果断以迅雷不及掩耳之势敲出了一个


        if(a==b)
        printf("YES\n");
        else
        printf("NO\n");

                  结局你们懂得~不过机智的我很快便想到了大数,所以我又机智的写了一个



        x=strcmp(a,b);
        if(x==0)
        printf("YES\n");
        else
        printf("NO\n");

                 = =然后感受到了Judge Status给我发了一个滑稽的表情


                https://img.mukewang.com/5b5315f1000117c801200112.jpg

这道最终坑爹の奥义题不但要求大数,而且还要考虑小数点,以及前置0与后置0的情况。只要考虑到这几点,就可以AC了~


# include <stdio.h># include <string.h>char *g(char *a){int b=strlen(a);if(strchr(a,'.')!=NULL){while(a[--b]=='0');if(a[b]=='.')a[b]='\0';elsea[b+1]='\0';}int i,j;while(a[i]=='0'&&a[i+1]!='.'){for(j=0;j<=b;j++)a[j]=a[j+1];a[j+1]='\0';}return a;}int main(){char x[120000],y[120000];while(scanf("%s%s",x,y)!=EOF){if(strcmp(g(x),g(y)))printf("NO\n");elseprintf("YES\n");//printf("%s\n",x);//printf("%s\n",y);}return 0;}


打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP