码迷,mamicode.com
首页 > 其他好文 > 详细

HDU ACM 4278 Faulty Odometer 进制映射

时间:2015-05-10 12:58:45      阅读:115      评论:0      收藏:0      [点我收藏+]

标签:c++   acm   算法   编程   c   

分析:十进制映射到八进制后,如果跳过8到9,实际上只数了7次,如果跳过3到了4-7实际上只数了3-6次。对应关系如下。

0,1,2,3,4,5,6,7,8,9

0,1,2,-,3,4,5,6,-,7

#include<iostream>
using namespace std;

int main()
{
	int a[10]={0,1,2,0,3,4,5,6,0,7},i;
	__int64 ans,k;
	char b[15];

	while(gets(b) && b[0]!='0')
	{
		ans=0;
		k=1;
		for(i=strlen(b)-1;i>=0;i--,k*=8)
			ans+=a[b[i]-'0']*k;
		printf("%s: %I64d\n",b,ans);
	}
    return 0;
}


HDU ACM 4278 Faulty Odometer 进制映射

标签:c++   acm   算法   编程   c   

原文地址:http://blog.csdn.net/a809146548/article/details/45619723

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!