首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

HDU 4278 Faulty Odometer 进制转化有关问题

2012-09-16 
HDU4278Faulty Odometer进制转化问题来源:http://acm.hdu.edu.cn/showproblem.php?pid4278题意:新定义一

HDU 4278 Faulty Odometer 进制转化问题

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

题意:新定义一种数,这种数字没有3 和 8 ,给你一个这样的数,问其对应的实际的数是多少?

思路:其实就是一个进制转化问题,不过新数字对应的并不是传统上的数字。

代码:

#include <iostream>#include <cstdio>#include <string.h>#include <string>using namespace std; int num[10] = {0,1,2,0,3,4,5,6,0,7};int mi(int x,int cnt){int s = 1;for(int i = 1; i <= cnt; ++i)s *= 8;return s * x;}int main(){string ss;while(cin >> ss){   if(ss == "0")   break;   int ans = 0;   for(int i = 0; i < ss.size(); ++i){      int x = int(ss[i] - '0');  ans += mi(num[x],ss.size() - i - 1);   }   cout<<ss<<": ";   printf("%d\n",ans);}return 0;}


热点排行