• 【杭电】[2054]A==B


    这里写图片描述
    这里写图片描述

    一开始觉得非常简单的一道题
    结果写了这么多
    发完代码再说话:

    #include<stdio.h>
    #include<string.h>
    int main() {
        char A[200000],B[200000],M[200000];
        int i,n,k,x;
        memset(B,'\0',sizeof(A));
        memset(B,'\0',sizeof(B));
        while(scanf("%s %s",&A,&B)!=EOF) {
            for(n=0; n<strlen(A); n++) {
                if(A[n]!='0') {
                    break;
                }
            }
            for(i=n,k=0; i<200000; i++,k++)
                M[k]=A[i];
            memset(A,'\0',sizeof(A));
            for(i=0,n=strlen(M); i<strlen(M); i++) {
                if(M[i]=='.') {
                    for(; n>0; n--) {
                        if(M[n-1]!='0'&&M[n-1]!='.') {
                            break;
                        }
                        if(M[n-1]=='.') {
                            M[n-1]='\0';
                            break;
                        }
                    }
    
                }
            }
            for(i=0,k=0; i<n; i++,k++)
                A[k]=M[i];
            memset(M,'\0',sizeof(M));
            for(n=0; n<strlen(B); n++) {
                if(B[n]!='0') {
                    break;
                }
            }
            for(i=n,k=0; i<200000; i++,k++)
                M[k]=B[i];
            memset(B,'\0',sizeof(B));
            for(i=0,n=strlen(M); i<strlen(M); i++) {
                if(M[i]=='.') {
                    for(; n>0; n--) {
                        if(M[n-1]!='0'&&M[n-1]!='.') {
                            break;
                        }
                        if(M[n-1]=='.') {
                            M[n-1]='\0';
                            break;
                        }
                    }
                }
            }
            for(i=0,k=0; i<n; i++,k++)
                B[k]=M[i];
            if(strcmp(A,B))
                printf("NO\n");
            else {
                printf("YES\n");
            }
        }
        return 0;
    }

    还是放在杭电11页中的中文题
    第一次感受到来自ACM满满的恶意……
    当时天真的以为是这样的:

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

    但是!
    在WA了之后
    看了讨论区
    感受到气氛诡异
    学长又说这一题暂时不用做
    甚至有的说他到现在都没AC这一题
    但……初生牛犊不怕虎
    最后AC的时候好高兴啊
    最后发现一直卡住我的是数组初识化的问题-.-
    思路都是对的
    而且我的这个代码似乎还多考虑了一些不用考虑的问题
    总之……

    题目地址:【杭电】[2054]A==B

  • 相关阅读:
    【kafka学习笔记】PHP接入kafka
    小白要怎么变成大神
    ab测试
    安装matlab出现ERROR8错误
    关于uint8_t / uint16_t / uint32_t /uint64_t 是什么数据类型
    朴素贝叶斯文本分类
    第10组 Beta冲刺 (2/5)(组长)
    第10组 每周小结 (1/3)(组长)
    第10组 Beta冲刺 (3/5)(组长)
    第10组 Beta冲刺 (5/5)(组长)
  • 原文地址:https://www.cnblogs.com/BoilTask/p/12570109.html
Copyright © 2020-2023  润新知