这道题......被我各种姿势搞死的...

  本题大意:给出两个数A和B,判断A和B是否相等,对应输出YES or NO。

  本题思路:本题我有两种思路,第一种是直接去除前导零和后导零然后稍加处理比较字符串即可,第二种是找出每个字符串的 '.' 然后向两边搜索即可,下面给出第一种思路的代码,仅供参考,建议读者自行实现。

  参考代码:

 #include <cstdio>
#include <cstring>
using namespace std; const int maxn = 1e8;
int begina, beginb, enda, endb, point1, point2, len1, len2;
bool flag;
char a[maxn], b[maxn]; int main () {
while(~scanf("%s %s", a, b)) {
flag = true;
point1 = point2 = maxn;
len1 = strlen(a), len2 = strlen(b);
if(strchr(a, '.'))
point1 = strchr(a, '.') - a;
if(strchr(b, '.'))
point2 = strchr(b, '.') - b;
begina = -, beginb = -, enda = len1, endb = len2;
for(int i = ; i < len1; i ++)// find begina
if(a[i] == '' && i < point1) begina = i;
else break;
for(int i = ; i < len2; i ++)// find beginb
if(b[i] == '' && i < point2) beginb = i;
else break;
for(int i = len1 - ; i >= point1; i --)// find enda
if(a[i] == '') enda = i;
else if(a[i] == '.') enda = i;
else break;
for(int i = len2 -; i >= point2; i --)// find endb
if(b[i] == '') endb = i;
else if(b[i] == '.') endb = i;
else break;
int i = begina + ;
for(int j = beginb + ; i < enda; j ++)
if(a[i ++] != b[j]) {
printf("NO\n");
flag = false;
break;
}
if(flag) printf("YES\n");
}
return ;
}

HDU-2054.A==B?(字符串简单处理)的更多相关文章

  1. FJ的字符串-简单递归

    FJ的字符串-简单递归 问题描述FJ在沙盘上写了这样一些字符串: A1 = “A” A2 = “ABA” A3 = “ABACABA” A4 = “ABACABADABACABA” … … 你能找出其 ...

  2. HDOJ/HDU 2567 寻梦(字符串简单处理)

    Problem Description 每个人的童年都可能梦想过自己成为一个英雄,尤其是喜欢武侠的男生,Yifenfei也不例外. 童年的他常常梦想自己能成为一个绝世英雄,手拿一把灿灿发亮的宝剑,手挽 ...

  3. HDU 1591 Encoded Love-letter(简单字符串)

    Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission( ...

  4. HDU 5907 Find Q(简单字符串)

    传送门 Description Byteasar is addicted to the English letter 'q'. Now he comes across a string S consi ...

  5. HDU——2112HDU Today(SPFA+简单Hash或map+前向星)

    HDU Today Time Limit: 15000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total ...

  6. python反转字符串(简单方法)及简单的文件操作示例

    Python反转字符串的最简单方法是用切片: >>> a=' >>> print a[::-1] 654321 切片介绍:切片操作符中的第一个数(冒号之前)表示切片 ...

  7. HDU2112 HDU Today 最短路+字符串哈希

    HDU Today Time Limit: 15000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total ...

  8. hdu 1062 Text Reverse 字符串

    Text Reverse                                                                                  Time L ...

  9. HDOJ/HDU 1073 Online Judge(字符串处理~)

    Problem Description Ignatius is building an Online Judge, now he has worked out all the problems exc ...

  10. HDOJ/HDU 1062 Text Reverse(字符串翻转~)

    Problem Description Ignatius likes to write words in reverse way. Given a single line of text which ...

随机推荐

  1. spring cloud之路(1)

    1.各个功能 springcloud 注册中心 Eureka负载均衡 Ribbon路由网关 Zuul断路器 Hystrix分布式配置 config服务调用跟踪 sleuth日志输出 elk 认证集成 ...

  2. Cache专用: SoftReference

    SoftReference的语义就是当内存不够用的时候,GC会回收SoftReference所引用的对象.所以,在memory sensitive的程序中将某些大型数据设置成SoftReference ...

  3. day29-序列化 json、pickle、shelve

    1.pickle和JSON序列化 如果我们想用文本文件保存一个 Python 对象怎么操作?这里就涉及到序列化的问题,序列化指的是将原本的字典.列表等内容转换成一个字符串的过程. 2.为什么要使用序列 ...

  4. TRANSFORM YOUR HABITS

    TRANSFORM YOUR HABITS3rd EditionNote from James Clear:I wrote Transform Your Habits to create a free ...

  5. zabbix简易安装指南

    1.php版本为5.5.37 mysql版本为5.5 nginx使用的是tengine2.2.1 2.系统为centos 7.2 最小化安装 3.使用阿里云的epel扩展源 4.首先安装依赖 yum ...

  6. Android忽略文件

    转自我自己的博客...Android Studio上传项目到GitHub

  7. centos6.5下oracle自动备份删除指定天数的文件

    第一步先做一个备份 #!/bin/sh export ORACLE_BASE=/home/oracle/app export ORACLE_HOME=/dbhome_1 export ORACLE_S ...

  8. debug.keystare找不到的解决办法[转]

    重装系统之后,丢失了debug.keystore,找了很久都没有找到,根据网上所讲的只要重新运行一个android项目;就会在avd中生成一个新的debug.keystroe,此法也没解决,索性直接重 ...

  9. EF 安装框架

    在NuGet中安装ef框架 命令:Install-package EntityFramework

  10. Appium appium 安装不了

    npm --registry http://registry.cnpmjs.org install -g appium使用npm的国内镜像可以安装,速度很不错.以后不想输入ip的话可以输入以下命令:n ...