您的位置:首页 > 其它

A - Faulty Odometer HDU - 4278——“进制转换”

2017-07-26 21:14 302 查看
Think:

1知识点:“进制转换”

2思考:

初始计数位权

int blue[] = {0, 1, 2, 4, 5, 6, 7, 9};


回溯位权

int red[] = {0, 1, 2, 0, 3, 4, 5, 6, 0, 7};


vjudge题目链接

以下为Accepted代码

#include <cstdio>
#include <cstring>
#include <algorithm>

using namespace std;

int red[] = {0, 1, 2, 0, 3, 4, 5, 6, 0, 7};

int main(){
int u, x, i, tp, link[14];
while(scanf("%d", &x) && x){
tp = 0;
u = x;
while(x){
link[tp++] = x%10;
x /= 10;
}
int sum = 0, p = 1;
for(i = 0; i < tp; i++){
sum += red[link[i]]*p;
p *= 8;
}
printf("%d: %d\n", u, sum);
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  进制转换 位权 思维