八进制转十六进制

3人阅读 评论(0) 收藏 举报
分类:

点击打开题目链接 PID=1342

八进制转十六进制

Time Limit: 2000 MSMemory Limit: 65536 KB
Total Submissions: 395Accepted: 135

Description


RT

Input


第一行为一个整数T,表示数据的组数

一下T行 每行一个八进制数字串s


Output


对于每组数据输出对应的十六进制字串


Sample Input


4
7
77
233
2333333333333333333

Sample Output


7
3F
9B
9B6DB6DB6DB6DB

Hint


1<=|s|<=10000

一、|s|表示s的长度

二、输入串没有前导0,当然,你的输出也不能含有前导0


Source


2015新生杯~~

# include <stdio.h>
# define N 10001
# define G 4
char O[N],B[N*3],*p;
char X[]={"0123456789ABCDEF"};
char A[][4]={"000","001","010","011","100","101","110","111"};
int U[]={8,4,2,1};
int main(){
    int i=1,j,k,L,m,n,T;
    scanf("%d ",&T);
    while(T--)
    {
        gets(O);
        L=-1;k=0;
        while(O[++L])
        {
            for(j=O[L]-'0',i=0;i<3;i++)
            {
                 B[k++]=A[j][i]-'0';//将8进制换成二进制
            }
        }
        i=(k%G)-1;
        for(m=0,j=0;i>=0;i--,j++)
              if(B[i])m+=(1<<j);
        if(m)printf("%c",X[m]);
        p=&B[k%G];
        k/=G;//算出16进制组数
        while(k--)
        {
           for(i=0,m=0;i<4;i++)
                if(*p++)m+=U[i];
          printf("%c",X[m]);
        }
        printf("\n");
    }
   return 0;
}

查看评论

纹理滤波方式、光源:Jeff Molofee(NeHe) 的 OPENGL 教程-第七课

 Jeff Molofee
  • cker
  • cker
  • 2001-09-09 01:55:00
  • 2244

蓝桥杯:十六进制转八进制的高效算法

总算是在提交了11次都错误之后,第12次过了。也是无语。现在的算法,按照蓝桥杯系统给的10个测试数,显示耗时31ms,内存占用3.589MB。 问题描述   给定n个十六进制正整数,输出它们对应的八进...
  • JiLuoXingRen
  • JiLuoXingRen
  • 2016-01-07 21:21:25
  • 16251

基础练习 十六进制转八进制 (java)

基础练习 十六进制转八进制   时间限制:1.0s   内存限制:512.0MB     问题描述   给定n个十六进制正整数,输出它们对应的八进制数。 输入格式   输入的第一行为...
  • CriminalCode
  • CriminalCode
  • 2017-03-25 01:03:24
  • 558

2016蓝桥杯基础练习——十六进制转换八进制

十六进制转换八进制 问题描述   给定n个十六进制正整数,输出它们对应的八进制数。 输入格式   输入的第一行为一个正整数n (1   接下来n行,每行一个由0~9、大写字母A~F组成的字符串,表示...
  • qq_21385857
  • qq_21385857
  • 2016-01-29 15:56:13
  • 1407

蓝桥杯基础练习——十六进制转八进制

问题描述  给定n个十六进制正整数,输出它们对应的八进制数。输入格式  输入的第一行为一个正整数n (1&amp;lt;=n&amp;lt;=10)。  接下来n行,每行一个由0~9、大写字母A~F组...
  • Jason_crawford
  • Jason_crawford
  • 2016-03-07 19:29:18
  • 1311

"蓝桥杯“基础练习:十六进制转八进制

问题描述   给定n个十六进制正整数,输出它们对应的八进制数。 输入格式   输入的第一行为一个正整数n (1...
  • sr19930829
  • sr19930829
  • 2014-01-22 22:57:06
  • 11778

蓝桥杯-十六进制转八进制(java)

基础练习 十六进制转八进制 时间限制:1.0s 内存限制:512.0MB 问题描述   给定n个十六进制正整数,输出它们对应的八进...
  • sihai12345
  • sihai12345
  • 2017-03-31 23:04:58
  • 468

蓝桥杯练习系统_基础练习_十六进制转八进制

问题描述   给定n个十六进制正整数,输出它们对应的八进制数。 输入格式   输入的第一行为一个正整数n (1   接下来n行,每行一个由0~9、大写字母A~F组成的字符串,表示要转换的十...
  • MM_GS
  • MM_GS
  • 2017-04-06 22:03:38
  • 380

c蓝桥杯高效实现十六进制转八进制

蓝桥杯:十二进制转八进制 题目要求将输入n个十六进制字符出串转为八进制输出对输入十六进制数长度要求小于等于100000(输出忽略前导0)   因为输入数长度过大基本排除使用int,long,long ...
  • try_fei_ge
  • try_fei_ge
  • 2016-11-20 10:50:15
  • 3171

C++-蓝桥杯基础训练-第12题-16进制转8进制高效算法

C++-蓝桥杯基础训练-第12题-16进制转8进制高效算法
  • Deadline_1
  • Deadline_1
  • 2017-02-04 21:39:55
  • 2433
    个人资料
    持之以恒
    等级:
    访问量: 3万+
    积分: 1374
    排名: 3万+
    最新评论