1813. M进制数问题

Constraints

Time Limit: 1 secs, Memory Limit: 32 MB

Description

试用 C++的类来表示一般进制数。

给定 2 个nm进制整数AB,计算m进制数整数P = A / B (向下取整)与 = A % B的值。

Input

输入包含多个测试点。第一行为一个整数T,表示测试点数。

对于每个测试点第 1 行是进制 m 。第 2 行和第 3 行分别给出 m 进制整数 AB

所有 m 进制数的10进制表示均不超出int范围。

Output

对于每个测试点,第一行输出 m 进制数整数 P = A / B 的值,第二行输出 Q = A % B 的值。

Sample Input

1
16
29FA5
7

Sample Output

5FF3
0 /************************************************************************************************************

#include<iostream>
using namespace std;

int map(char s){
 return s-'A'+10;
}

void change(int n, int p){
     int s[65];
     int c;
     int m=0;;
     if(n==0) cout<<0;
     while (n!=0)//数制转换,结果存入数组s[m] 
        { 
            c=n%p; 
            n=n/p; 
            m++;s[m]=c;   //将余数按顺序存入数组s[m]中 
        } 
     
        for(int k=m;k>=1;k--)//输出转换后的序列 
        { 
            if(s[k]>=10) //若为十六进制等则输出相对应的字母 
                cout<<(char)(s[k]+55); 
            else         //否则直接输出数字 
                cout<<s[k]; 
        } 
        cout<<endl;
}

int main(){
 int n;
 cin>>n;
 while(n--){
  int a;
  cin>>a;
  string s,ss;
  int c=0;
  cin>>s>>ss;
  for(int i=0;i<s.length();i++){
   if(s[i]>='0'&&s[i]<='9'){
       c = a*c + (s[i]-'0'); 
   }
   else{
    c = a*c + map(s[i]);
   }
      //cout<<c<<"#####"<<endl;
  }
  int cc=0;
  for(int i=0;i<ss.length();i++){
   if(s[i]>='0'&&ss[i]<='9'){
       cc = cc*a + (ss[i]-'0'); 
   }
   else{
    cc = cc*a + map(ss[i]);
   }
   //cout<<cc<<"******"<<endl;
  }
  
  int t = c/cc;
  int p = c%cc;
  //cout<<"t="<<t<<endl;
  //cout<<"p="<<p<<endl; 
  
  change(t,a);
  change(p,a);
   
 }
 return 0;
}

1813. M进制数问题的更多相关文章

  1. [转]as3 算法实例【输出1 到最大的N 位数 题目:输入数字n,按顺序输出从1 最大的n 位10 进制数。比如输入3,则输出1、2、3 一直到最大的3 位数即999。】

    思路:如果我们在数字前面补0的话,就会发现n位所有10进制数其实就是n个从0到9的全排列.也就是说,我们把数字的每一位都从0到9排列一遍,就得到了所有的10进制数. /** *ch 存放数字 *n n ...

  2. CF459C Pashmak and Buses (构造d位k进制数

    C - Pashmak and Buses Codeforces Round #261 (Div. 2) C. Pashmak and Buses time limit per test 1 seco ...

  3. [codevs1157]2^k进制数

    [codevs1157]2k进制数 试题描述 设r是个2k 进制数,并满足以下条件: (1)r至少是个2位的2k 进制数. (2)作为2k 进制数,除最后一位外,r的每一位严格小于它右边相邻的那一位. ...

  4. noip2006 2^k进制数

    设r是个2k进制数,并满足以下条件: (1)r至少是个2位的2k进制数. (2)作为2k进制数,除最后一位外,r的每一位严格小于它右边相邻的那一位. (3)将r转换为2进制数q后,则q的总位数不超过w ...

  5. c++描述将一个2进制数转化成10进制数(用到初始化栈,进栈,入栈)

    /* c++描述将2进制数转化成10进制数 问题,1.初始化栈后,用new,不知道delete是否要再写一个函数释放内存, 还是在哪里可以加上delete 2.如果栈满了,我要分配多点空间,我想的办法 ...

  6. 关于不同进制数之间转换的数学推导【Written By KillerLegend】

    关于不同进制数之间转换的数学推导 涉及范围:正整数范围内二进制(Binary),八进制(Octonary),十进制(Decimal),十六进制(hexadecimal)之间的转换 数的进制有多种,比如 ...

  7. NOIP2006 2k进制数

    2^k进制数 题目描述 设r是个2^k 进制数,并满足以下条件: (1)r至少是个2位的2^k 进制数. (2)作为2^k 进制数,除最后一位外,r的每一位严格小于它右边相邻的那一位. (3)将r转换 ...

  8. 4位bcd数转换为2进制数

    DATA   SEGMENTBUF    DW  1234HBUF1   DW  ?    ;2进制数放到buf1内存单元DATA   ENDSCODE   SEGMENTASSUME CS:CODE ...

  9. P1066 2^k进制数

    传送门 题目描述 设r是个2^k 进制数,并满足以下条件: (1)r至少是个2位的2^k 进制数. (2)作为2^k 进制数,除最后一位外,r的每一位严格小于它右边相邻的那一位. (3)将r转换为2进 ...

随机推荐

  1. maven依赖关系中Scope的作用

      目前<scope>可以使用5个值: (1) compile (编译) compile是默认的范围:如果没有提供一个范围,那该依赖的范围就是编译范围.编译范围依赖在所有的classpat ...

  2. react-组件生命周期

    本文同步至微信公众号http://mp.weixin.qq.com/s?__biz=MzAxMzgwNDU3Mg==&mid=402267570&idx=1&sn=4b0dc2 ...

  3. 查看表的datapages

    select object_name(i.object_id) as tableName,data_pages as dataPagesfrom sys.indexes as ijoin sys.pa ...

  4. iPhone手机安全指南

    摘要:iPhone手机安全指南 - 1.iPhone解锁使用指纹:2.启用“查找我的iPhone”功能:3.Apple ID启用两步验证:4.修改SIM卡PIN码.5.iPhone被盗或丢失后,登录i ...

  5. .NET core mvc on Docker

    安装Docker 参考:http://www.cnblogs.com/windchen/p/6224233.html 下载.NET CORE MVC镜像 sudo docker pull regist ...

  6. 线性代数和numpy——黑板客老师课程学习

    一.代数是什么 代数->数的抽象表示->向量空间(线性空间) 线代->线性代数 关系: 向量空间之间和内部转换是通过线性变换. 实数——一维空间的点 复数——二维空间的点 如果两个向 ...

  7. BZOJ1801:[Ahoi2009]chess 中国象棋

    Time Limit: 10 Sec  Memory Limit: 64 MB Description 在N行M列的棋盘上,放若干个炮可以是0个,使得没有任何一个炮可以攻击另一个炮. 请问有多少种放置 ...

  8. C# POST请求

    public string PostWebRequest(string postUrl, string paramData, Encoding dataEncode) { string ret = s ...

  9. python tm_isdst = -1, 0, 1 datetime module

    Python 里的tm_isdst DST 是daylight saving time, 意思是:夏令时 在python的time, datetime模块下,按照struct_time格式输出时间,最 ...

  10. Function类型

    1.每个函数都是Function类型的,和其他引用类型一样都具有属性和方法.函数也是对象,因此函数实际上是一个指向函数对象的指针. 函数声明语法定义: 方法1: function sum(num1,n ...