【乱搞】【AOJ-611】消失的5,8,9

Description
期末成绩出来了,又是58,59,无奈啊,yobobobo无法接受这个现实,于是暗下决定:从此之后,5,8,9这些数字将在我的字典里消失!现在yobobobo的世界里没有5,8,9,所以他世界里的数值和我们不一样,在他的世界里,4之后就到了6(我们当然是5),所以yobobobo的世界是这样的:
1,2,3,4,6,7,10,11,12,13,14,16,,17……..47,60……,现在给你一个yobobobo世界里的数值N,请输出他原来的数值(比如6,其实它本来是5)。

 

Input
输入包括多组数据,以文件(EOF)结束。
每组测试数据一个整数N(0<=N<=10^9)(输入保证每位数值绝对不包含5,8,9中的任何一位)

 

Output
每组数据输出一个整数,表示真实的N

 

Sample Input
0
6
221712

 
Sample Output
0
5
39062
思路:
一个类七进制的题目 0,1,2,3,4,5,6,7对应着0,1,2,3,4,6,7 接着只要换算成十进制即可
 
参考代码:
#include <stdio.h>
int pow(int n)//求7的n次方
{
    int i,sum;
    for(i=0,sum=1;i<n;i++)
        sum*=7;
    return sum;
}
int main()
{
    int n;
    while(scanf("%d",&n)!=EOF)
    {
        int i=0,sum=0,num;
        while(n>=1)
        {
            num=n%10;
            //因为没有5,8,9 所以根据num的范围要减去相应的数值
            if(num==6||num==7)
                num--;
            else if(num==8)
                num-=2;
            else if(num==9)
                num-=3;
            sum+=num*pow(i);
            n/=10;
            i++;
        }
        printf("%d\n",sum);
    }
    return 0;
}

 

posted @   AHU_树  阅读(184)  评论(0编辑  收藏  举报
编辑推荐:
· 智能桌面机器人:用.NET IoT库控制舵机并多方法播放表情
· Linux glibc自带哈希表的用例及性能测试
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
阅读排行:
· 手把手教你在本地部署DeepSeek R1,搭建web-ui ,建议收藏!
· 新年开篇:在本地部署DeepSeek大模型实现联网增强的AI应用
· Janus Pro:DeepSeek 开源革新,多模态 AI 的未来
· 互联网不景气了那就玩玩嵌入式吧,用纯.NET开发并制作一个智能桌面机器人(三):用.NET IoT库
· 【非技术】说说2024年我都干了些啥
点击右上角即可分享
微信分享提示