zoukankan      html  css  js  c++  java
  • hdu2054

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

    很烦的题~~

    View Code
    #include"iostream"
    #include
    "string"
    using namespace std;
    int i,j,L1,L2;
    char a[20000],b[20000];
    int main()
    {
    while(scanf("%s %s",&a,&b)!=EOF)
    {
    if(a[0]=='-'&&b[0]=='-'||a[0]!='-'&&b[0]!='-')
    {
    int sign=-1;
    if(a[0]=='-'&&b[0]=='-') sign=1;
    else sign=0;
    int start1=0,start2=0,mark1=0,mark2=0,
    int end1=strlen(a),end2=strlen(b);
    //************处理a前面的0************
    for(i=sign;i<strlen(a);i++)
    if(a[i]=='.') { mark1=1; break;}

    for(i=sign;i<strlen(a);i++)
    {
    if(a[i]!='0'&&i!=strlen(a)-1) { start1=i; break;}
    else start1=strlen(a)-1;
    }
    //*************处理b前面的0****************
    for(i=sign;i<strlen(b);i++)
    if(b[i]=='.') { mark2=1; break;}

    for(i=sign;i<strlen(b);i++)
    {
    if(b[i]!='0'&&i!=strlen(b)-1) { start2=i; break;}
    else start2=strlen(b)-1;
    }
    //************处理a含有“.”后面的0***************
    if(mark1==1)
    {
    for(i=strlen(a)-1;i>=sign;i--)
    if(a[i]!='0')
    {
    if(a[i]=='.') { end1=i; break;}
    else { end1=i; break;}
    }
    }
    //************处理b含有“.”后面的0***********
    if(mark2==1)
    {
    for(i=strlen(b)-1;i>=sign;i--)
    if(b[i]!='0')
    {
    if(b[i]=='.') { end2=i; break;}
    else { end2=i; break;}
    }
    }
    //***********处理0的情况*************
    if(end1==start1) start1=0;
    if(end2==start2) start2=0;
    //cout<<start1<<" "<<end1<<endl;
    //cout<<start2<<" "<<end2<<endl;
    if(end1-start1==end2-start2)
    {
    int flag=0;
    for(i=start1,j=start2;j<end2,i<end1;i++,j++)
    if(a[i]==b[j]) flag++;

    if(flag==end1-start1) cout<<"YES"<<endl;
    else cout<<"NO"<<endl;
    }
    else cout<<"NO"<<endl;
    }
    else cout<<"NO"<<endl;
    }
    return 0;
    }

    java版:

    View Code
    import java.io.*;
    import java.util.Scanner;
    import java.math.BigDecimal;

    class Main
    {
    public static void main(String [] args)
    {
    Scanner cin
    = new Scanner(new BufferedInputStream(System.in));
    BigDecimal a , b ;
    while(cin.hasNext())
    {
    a
    =cin.nextBigDecimal();
    b
    =cin.nextBigDecimal();
    a
    =a.stripTrailingZeros();
    b
    =b.stripTrailingZeros();

    int c=a.compareTo(b);
    if(c==0)
    System.out.println(
    "YES");
    else System.out.println("NO");
    }
    }
    }
  • 相关阅读:
    Java的synchronized的同步代码块和同步方法的区别
    关于java字节码框架ASM的学习
    说说cglib动态代理
    Java虚拟机-JVM各种参数配置大全详细
    Permanent Space 和 Heap Space
    OOM三种情况
    Java性能调优(一):调优的流程和程序性能分析
    数学之路-python计算实战(17)-机器视觉-滤波去噪(中值滤波)
    使用 Pascal 脚本编写网页, PWP 项目
    android 4.0主线程訪问网络问题
  • 原文地址:https://www.cnblogs.com/FCWORLD/p/2025175.html
Copyright © 2011-2022 走看看