hdu2544_GB4278

hdu2544_GB4278HDU 4278 Faulty Odometer

大家好,又见面了,我是你们的朋友全栈君。

Faulty Odometer

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

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 725    Accepted Submission(s): 512

Problem Description
  You are given a car odometer which displays the miles traveled as an integer. The odometer has a defect, however: it proceeds from the digit 2 to the digit 4 and from the digit 7 to the digit 9, always skipping over the digit 3 and 8. This defect shows up in all positions (the one’s, the ten’s, the hundred’s, etc.). For example, if the odometer displays 15229 and the car travels one mile, odometer reading changes to 15240 (instead of 15230).
 
Input
  Each line of input contains a positive integer in the range 1..999999999 which represents an odometer reading. (Leading zeros will not appear in the input.) The end of input is indicated by a line containing a single 0. You may assume that no odometer reading will contain the digit 3 and 8.
 
Output
  Each line of input will produce exactly one line of output, which will contain: the odometer reading from the input, a colon, one blank space, and the actual number of miles traveled by the car.
 
Sample Input
 
15
2005
250
1500
999999
0

 
Sample Output
 
15: 12
2005: 1028
250: 160
1500: 768
999999: 262143

 
Source
 
Recommend
liuyiding
 
 
类似于8进制转化为10进制
 
#include<stdio.h>

int num[20],cnt;

void change(int x){
    cnt=0;
    while(x){
        num[cnt++]=x%10;
        x/=10;
    }
    for(int i=0;i<cnt;i++)
        if(num[i]>=9)
            num[i]-=2;
        else if(num[i]>=4)
            num[i]-=1;
}

int main(){
    int n;
    while(scanf("%d",&n) && n){
        int ans=0;
        change(n);
        for(int i=cnt-1;i>=0;i--)
            ans=ans*8+num[i];
        printf("%d: %d\n",n,ans);
    }
    return 0;
}

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/107096.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • NLP︱高级词向量表达(二)——FastText(简述、学习笔记)「建议收藏」

    NLP︱高级词向量表达(二)——FastText(简述、学习笔记)「建议收藏」FastText是Facebook开发的一款快速文本分类器,提供简单而高效的文本分类和表征学习的方法,不过这个项目其实是有两部分组成的,一部分是这篇文章介绍的fastText文本分类(paper:A.Joulin,E.Grave,P.Bojanowski,T.Mikolov,BagofTricksforEfficientTextClassif…

    2022年4月27日
    47
  • java编程代码都是背下来的吗_向学弟学妹们介绍自己的大学

    java编程代码都是背下来的吗_向学弟学妹们介绍自己的大学同学们好,今天二哥是来还债的,记得先拖到文末点个赞再回来细细的读,好不好!最近一段时间,我一直在学习Java虚拟机和字节码方面的知识,为的就是有朝一日成为真正牛逼的技术大佬!不知道大家有没有这种感觉,就是一开始学习编程的时候,真心不想看底层的东西,就想直接上来撸代码,但时间久了以后,总感觉缺点啥~~~~于是我开始阅读《深入理解计算机系统》、《图解TCP/IP》、《深入理解Java虚拟机》这些偏底层的书籍,看得烦了,就去刷我之前给大家推荐过的两个视频课,《哈佛大学的CS50》和《计算机科学速成

    2025年6月20日
    2
  • knn算法实现手写数字识别的背景_knn手写数字识别60000训练集

    knn算法实现手写数字识别的背景_knn手写数字识别60000训练集KNN最邻近分类算法:(近邻取样)邻近算法,或者说K最近邻(kNN,k-NearestNeighbor)分类算法是机器学习分类技术中最简单的方法之一。所谓K最近邻,就是k个最近的邻居的意思,说的是每个样本都可以用它最接近的k个邻居来代表。属于监督学习,有类别标记,且KNN是惰性学习。叫做Memory-basedlearning、也叫instance-basedlearning.他…

    2025年11月13日
    5
  • mysql读写分离的意义_MySQL读写分离

    mysql读写分离的意义_MySQL读写分离如何实现mysql的读写分离?就是基于主从复制架构,简单来说,就搞一个主库,挂多个从库,然后我们就单单只是写主库,然后主库会自动把数据给同步到从库上去。MySQL主从复制原理的是啥?主库将变更写binlog日志,然后从库连接到主库之后,从库有一个IO线程,将主库的binlog日志拷贝到自己本地,写入一个中继日志中。接着从库中有一个SQL线程会从中继日志读取binlog,然后执行binlog日志中的…

    2022年6月13日
    25
  • 如何使用yum卸载mysql数据库_yum卸载mysql数据库方法(linux centos系统)

    如何使用yum卸载mysql数据库_yum卸载mysql数据库方法(linux centos系统)如何在linuxcentos系统中使用yum命令卸载mysql数据库呢?只需要使用yumremove命令即可轻松卸载mysql数据库了,方法很简单,只需要两个步骤即可。步骤一:执行下面的命令,查询有哪些mysql安装包可以卸载的,如下。[root@VM_230_32_centos~]#rpm-qa|grepmysqlphp-mysqlnd-5.6.32-1.el7.remi.x86…

    2022年5月22日
    38
  • 知乎免登录插件2021

    在电脑中使用过网页版知乎的小伙伴们应该都知道,在使用前是必须进行登录的,为此小编就带来了知乎免登录插件2021,这是专门针对知乎登录问题而打造的一个浏览器插件脚本工具。虽然之前小编也有介绍过知乎uwp版,但是也有许多人更加偏爱网页版,那么最好就是配合这个脚本插件来进行使用哦,因为在访问网页版时会强制要求你登录账号,否则根本点不进去,无法正常使用,但是有了该插件,只需要启动即可轻松帮助用户实现不登录也可正常使用知乎网页版,并只要启动了知乎免登陆脚本不仅直接免去了登陆的流程,还丝毫不会影响用户浏览其中的问题、文

    2022年4月6日
    981

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号