HDUOJ-----A == B ?
时间:2022-05-05
本文章向大家介绍HDUOJ-----A == B ?,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
A == B ?
Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 49403 Accepted Submission(s): 7593
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
Author
8600 && xhd
Source
此题解法:分整数和小数两部分来比较即可!!但要注意的事情还是比较多的
需要考虑:
+0.000 0.00
YES
+0.00 -0.00
YES
+0001.00 1
YES
+000.0000100 .00001
YES
代码如下:
1 #include<cstdio>
2 #include<cstring>
3 #define MAX 20000
4 char a[MAX],b[MAX];
5 char ra[MAX],apoint[MAX],
6 rb[MAX],bpoint[MAX];
7 void func(char *a,char *ra,char *apoint)
8 {
9 int i=0,k=0;
10 bool flag=true;
11 int len=strlen(a);
12 if(*a=='+')i++;
13 else if(a[0]=='-')
14 {
15 ra[k++]='-' ;
16 i=k;
17 }
18 for( ; a[i]=='0'&&i<len ; i++ );
19
20 for( ;a[i]!='.'&&i<len ; i++ )
21 {
22 ra[k++] = a[i] ;
23 }
24 int j;
25 a[i]=='.'? i++ : i ;
26 for(j=len-1;a[j]=='0'&&j>=i;j--);
27
28 for(k=0 ; i<=j ; i++)
29 {
30 apoint[k++]=a[i];
31 }
32 }
33
34 int main( void )
35 {
36 while(scanf("%s%s",a,b)!=EOF)
37 {
38 memset(ra,' ',sizeof ra);
39 memset(apoint,' ',sizeof apoint);
40 memset(rb,' ',sizeof rb);
41 memset(bpoint,' ',sizeof bpoint);
42 func(a,ra,apoint);
43 func(b,rb,bpoint);
44 if(strcmp(ra,rb)==0&&strcmp(apoint,bpoint)==0)
45 puts("YES");
46 else if((*rb=='-'&&*(rb+1)==' ')&&strcmp(apoint,bpoint)==0)
47 puts("YES");
48 else if(*ra=='-'&&*(ra+1)==' '&&strcmp(apoint,bpoint)==0)
49 puts("YES");
50 else
51 puts("NO");
52 }
53 return 0;
54 }
- jenkins 入门教程(下)
- CSS3制作心形头像
- CSS魔法堂:重拾Border之——不仅仅是圆角
- scala 学习笔记(01) 函数定义、分支、循环、异常处理、递归
- java之log4j的配置
- scala 学习笔记(02) 元组Tuple、数组Array、Map、文件读写、网页抓取示例
- scala 学习笔记(04) OOP(上)主从构造器/私有属性/伴生对象(单例静态类)/apply方法/嵌套类
- 使用jQuery封装实用函数
- scala 学习笔记(05) OOP(中)灵活的trait
- Web Fundamentsals学习1-Multiple-Screen-Site
- Vagrant使用
- java 中的异步回调
- 澳大利亚域名管理机构多年敲竹杠?
- ASP.NET中使用HttpWebRequest调用WCF
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 我服务又双叒叕奔溃了,含泪干货分享
- Azure DevOps+Docker+Asp.NET Core 实现CI/CD(一 .简介与创建自己的代理池)
- Android数据库高手秘籍(十二),LitePal的索引功能
- 使用pm2管理go应用进程
- 用Docker搭建Redis主从复制的集群
- IDEA 非常重要的一些设置项 → 一连串的问题差点让我重新用回 Eclipse !
- ArrayList源码分析(基于jdk1.8)(二):subList陷阱补充
- Windows10中安装Docker
- Windows下Docker安装ClickHouse
- ArrayList源码分析(基于jdk1.8)(三):Arrays.asList方法带来的问题
- 对基本类型包装类常量池的补充
- 与IntegerCache有关的一个比较坑的面试题
- C# Foreach循环本质与枚举器
- Java中的时间和日期(一):有关java时间的哪些坑
- Java中的时间和日期(二):java时间存储的基本原理