HBCPC Problem C超级密码

原创 2018年04月17日 21:51:12

1841: 超级密码

描述

题目描述:

小明今年9岁了,最近迷上了设计密码!今天,他又设计了一套他认为很复杂的密码,并且称之为“超级密码”. 说实话,这套所谓的“超级密码”其实并不难:对于一个给定的字符串,你只要提取其中的数字,然后连在一起构成一个整数,再乘以小明的幸运数字513,就是解密后的结果了~比如,字符串“ads2d4,122”,提取后的整数是24122,然后乘以513,就能得到解密后的结果:12374586.注:题目保证解密后的结果在32位无符号整数范围.

输入:

输入首先包括一个正整数N,表示有N组测试用例. 每组数据占一行,包含一个长度不超过30的字符串.

输出:

请根据题目要求输出解密后的结果,每组数据输出一行.

样例输入
2
ads2d4,122
0023asdf2AA90
样例输出
12374586
11947770

现在看来,那个时候自己真是个小白,atoi这么好用的函数竟然不知道,还去手动实现,虽然手动实现并不困难,

但是还忘了给数组的末尾加上\0,不加\0的直接后果就是,该数组再次赋值时,会在上次应该加\0的位置赋值,

导致第二个数字过大直接溢出,第二个数字永远不对。

#include<stdio.h>
#include<string.h>
int main()
{
       char a[100];
    char b[31];
   // a="ads2d4,122";
    int k,i,j,l,r;
    int n=0;
    int N;
   scanf("%d",&n);
   getchar();//吸收回车
   for(k=0;k<n;k++)
   {
        N=0;
       gets(a);
        l=strlen(a);
        for(i=0;i<l;i++)
        {
            if(isdigit(a[i]))
            {
                b[N]=a[i];
                N++;
            }
        }
        b[N]='\0';//在末尾追加\0,否则会使数值过大,导致数值溢出,都是细节问题,细节决定成败!!
        // printf("%d\n",atoi(b,10));
        r=atoi(b,10)*513;
        printf("%d\n",r);

   }


}

测试点


通过率
通过的数据:
结果耗时内存
通过01736704
通过01536000

电信 光纤猫 贝尔E8-C-EPON 破解超级管理员密码 实现PPPoE自动拨号和无线路由功能

电信 光纤猫 贝尔E8-C-EPON 破解超级管理员密码 实现PPPoE自动拨号和无线路由功能 时间 2014-07-14 01:26:26  Tang's Blog 原文  http:/...
  • hsg77
  • hsg77
  • 2015-10-12 23:41:09
  • 23615

破解密码(原题目:The Hardest Problem Ever)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1048
  • Enjoying_Science
  • Enjoying_Science
  • 2014-08-10 11:43:33
  • 984

Linux更改超级用户的密码

有一段时间没有弄Linu
  • manmanking
  • manmanking
  • 2014-04-24 13:21:11
  • 3266

Linux设置超级用户密码

刚安装好的Linux怎么进root呢,表示安装过很多边,每次都百度,这里直接写下来 安装好后终端中输入sudo passwd,然后输入当前用户密码,接着就可以设置超级用户密码...
  • shaynerain
  • shaynerain
  • 2017-09-26 16:45:36
  • 436

硬盘录像机超级密码生成软件

  • 2014年11月24日 10:37
  • 314KB
  • 下载

Linux系统超级用户root密码忘记的解决办法

本次博文主要介绍,遗忘超级用户root密码而开机无法正常登陆等一系列问题的解决方法...
  • Sunny_Future
  • Sunny_Future
  • 2017-10-10 00:19:49
  • 785

华为 hg8245c 超级密码

1 猫用户默认是 useradmin ,口令在猫的背后 从网上获得这个猫的超级用户是  超级用户名:telecomadmin 超级密码:nE7jA%5m(注意大小写)(百度得到) 2 进入后,先在网络...
  • hanzheng260561728
  • hanzheng260561728
  • 2016-06-14 21:13:29
  • 16846

中兴ZXA10-F460 v3.0获取超级管理员密码

都知道zxa10 f460有个超级账号,使用这个超级账号,我么可以管理路由器,设置路由器自动拨号等。但是只知道超级账号是telcomadmin,但却不知道密码,接下这个教程就是教你在使用网上提供的密码...
  • qy199110
  • qy199110
  • 2014-02-09 23:16:00
  • 3903

电信 宽带 光猫 中兴 F460 V6.0.0P11T2sc 破解 telecomadmin 超级密码 的方法

方法一 开始之前:拔掉光纤,记下LOID 现在开始:     1,打开http://192.168.1.1/hidden_version_switch.gch,选择“Default Version”并...
  • zhangrui_fslib_org
  • zhangrui_fslib_org
  • 2016-10-08 17:21:43
  • 23485

ubuntu如何修改超级用户密码

Ubuntu一些版本的超级用户是被隐藏的,但很多的地方又要用到这个超级用户的权限。我们可以这样来设置超级用户: ……:~$ sudo passwd   Password: -> 输入安装时那个用...
  • shubingzhuoxue
  • shubingzhuoxue
  • 2015-06-10 19:53:54
  • 2825
收藏助手
不良信息举报
您举报文章:HBCPC Problem C超级密码
举报原因:
原因补充:

(最多只允许输入30个字)