题目描述

请你编一程序实现两种不同进制之间的数据转换。

输入输出格式

输入格式:

输入数据共有三行,第一行是一个正整数,表示需要转换的数的进制n(2≤n≤16),第二行是一个n进制数,若n>10则用大写字母A~F表示数码10~15,并且该n进制数对应的十进制的值不超过1000000000,第三行也是一个正整数,表示转换之后的数的进制m(2≤m≤16)。

输出格式:

输出仅一行,包含一个正整数,表示转换之后的m进制数。

输入输出样例

输入样例#1: 复制

  1. 16
  2. FF
  3. 2
输出样例#1: 复制

  1. 11111111
  2.  
  3. 先把一个数转换成十进制
    转换的时候用乘权累加法
    然后再转换成m进制
    转换的时候用不断取模法(xjb扯的) :joy:
  1. #include<iostream>
  2. #include<cstdio>
  3. #include<cstring>
  4. #include<algorithm>
  5. #include<cmath>
  6. #define LL long long
  7. using namespace std;
  8. const int MAXN=1e6+;
  9. const int mod=1e9+;
  10. inline int read()
  11. {
  12. char c=getchar();int flag=,x=;
  13. while(c<''||c>'') {if(c=='-') flag=-;c=getchar();}
  14. while(c>=''&&c<='') x=x*+c-,c=getchar();return x*flag;
  15. }
  16. int n,m;
  17. char s[MAXN];
  18. int a[MAXN],b[MAXN],tot=-,ans=,now=;
  19. int out[MAXN],cnt=;
  20. int main()
  21. {
  22. for(int i='';i<='';i++) a[i]=++tot,b[tot]=i;
  23. for(int i='A';i<='Z';i++) a[i]=++tot,b[tot]=i;
  24. n=read();
  25. scanf("%s",s+);m=read();
  26. int ls=strlen(s+);
  27. for(int i=ls;i>=;i--) ans+=a[ s[i] ]*now,now=now*n;
  28. now=;
  29. while(ans) out[++cnt]=ans%m,ans/=m;
  30. for(int i=cnt;i>=;i--) printf("%c",b[ out[i] ]);
  31. return ;
  32. }

  

洛谷P1143 进制转换的更多相关文章

  1. 洛谷——P1143 进制转换

    P1143 进制转换 题目描述 请你编一程序实现两种不同进制之间的数据转换. 输入输出格式 输入格式: 输入数据共有三行,第一行是一个正整数,表示需要转换的数的进制n(2≤n≤16),第二行是一个n进 ...

  2. 洛谷 P1143 进制转换

    P1143 进制转换 题目描述 请你编一程序实现两种不同进制之间的数据转换. 输入输出格式 输入格式: 输入数据共有三行,第一行是一个正整数,表示需要转换的数的进制n(2≤n≤16),第二行是一个n进 ...

  3. 集训作业 洛谷P1143 进制转换

    这个题目就是让我们实现进制的转换. 我只会很简单的把他从一个别的进制转化成10进制,然后再继续转化成目标进制. #include<iostream> #include<cstdio& ...

  4. 洛谷P1017 进制转换

    洛谷P1017 进制转换 题目描述 我们可以用这样的方式来表示一个十进制数: 将每个阿拉伯数字乘以一个以该数字所处位置的(值减1)为指数,以10为底数的幂之和的形式.例如:123可表示为 \(1*10 ...

  5. 洛谷p1017 进制转换(2000noip提高组)

    洛谷P1017 进制转换 题意分析 给出一个数n,要求用负R进制显示. n∈[-32768,32767].R ∈[-20,-2] 考察的是负进制数的转换,需要理解短除法. 看到这道题的时候,我是比较蒙 ...

  6. 洛谷P2084 进制转换

    题目背景 无 题目描述 今天小明学会了进制转换,比如(10101)2 ,那么它的十进制表示的式子就是 : 1*2^4+0*2^3+1*2^2+0*2^1+1*2^0, 那么请你编程实现,将一个M进制的 ...

  7. 洛谷——P1017 进制转换

    P1017 进制转换 题目描述 我们可以用这样的方式来表示一个十进制数: 将每个阿拉伯数字乘以一个以该数字所处位置的(值减1)为指数,以10为底数的幂之和的形式.例如:123可表示为 1\times ...

  8. 集训作业 洛谷P1017 进制转换

    这个题的题目真的太恶心了. 重点是他的题目描述和他的目标没啥关系. 和最终目的有关系的只有这么一句话:”输出此负进制数及其基数,若此基数超过10,则参照16进制的方法处理.“ 我们通过看这句话可以发现 ...

  9. 洛谷 P1017 进制转换

    推荐洛谷 题目描述 我们可以用这样的方式来表示一个十进制数: 将每个阿拉伯数字乘以一个以该数字所处位置的(值减1)为指数,以10为底数的幂之和的形式.例如:123可表示为 1*10^2+2*10^1+ ...

随机推荐

  1. javaweb——登陆权限过滤器的编写

    http://blog.csdn.net/lzc4869/article/details/50935858

  2. 洛谷—— P2934 [USACO09JAN]安全出行Safe Travel || COGS ——279|| BZOJ——1576

    https://www.luogu.org/problem/show?pid=2934 题目描述 Gremlins have infested the farm. These nasty, ugly ...

  3. Unity 之 C# 利用回调函数实现C++匿名函数

    做C++开发的都用过匿名函数很好用,可是C#开发怎么实现呢?前几天做一个拍照功能的时候.我偶然发现某个函数假设是C++的话.用匿名函数太好了,于是開始研究C#的回调,代理.托付等,最后总算是实现了我想 ...

  4. cocos2d-x《农场模拟经营养成》游戏完整源代码

    cocos2d-x农场模拟经营养成游戏完整源代码,cocos2d-x引擎开发,使用JSON交互,支持IOS与 Android,解压后1016MB. 非常强大的游戏源代码         完整游戏源代码 ...

  5. 推荐一款优雅的jquery手风琴特效

    推荐一款基于 jQuery和 CSS3实现的手风琴效果. 查看demo演示

  6. elasticsearch搜索类型简单介绍

    简单搜索 GET请求很easy--你能轻松获取你想要的文档.让我们来进一步尝试一些东西.比方简单的搜索! 我们尝试一个最简单的搜索所有员工的请求: GET /megacorp/employee/_se ...

  7. linux内核计算时间差以及jiffies溢出

    jiffies是每一个时钟中断,都会加1.这就导致一个问题.不管jiffies(一般来说是unsigned long类型)多少个字节,总有溢出的时候. 更极端的时候.当期jiffies是0xfffff ...

  8. SQL中NUMERIC和DECIMAL的区别

    numeric 和 decimal 数据类型的默认最大精度值是 38.在 Transact-SQL 中,numeric 与 decimal 数据类型在功能上等效. decimal(numeric ) ...

  9. Codefroces432 div2 A,B,C

    A. Arpa and a research in Mexican wave Arpa is researching the Mexican wave. There are n spectators ...

  10. rev---将文件中的每行内容以字符为单位反序输出

    rev命令将文件中的每行内容以字符为单位反序输出,即第一个字符最后输出,最后一个字符最先输出,依次类推.