zoukankan      html  css  js  c++  java
  • 进制转换(高级版^^)

    输入一个十进制数N,将它转换成R进制数输出。

    Input

    输入数据包含多个测试实例,每个测试实例包含两个整数N(32位整数)和R(2<=R<=16, R<>10)。

    Output

    为每个测试实例输出转换后的数,每个输出占一行。如果R大于10,则对应的数字规则参考16进制(比如,10用A表示,等等)。

    Sample Input

    7 2
    23 12
    -4 3

    Sample Output

    111
    1B
    -11
    #include <stdio.h>
    #include <string.h>
    #include <deque>
    #include <algorithm>
    #include <iostream>
    using namespace std;
    int fun(int n,int r)
    {
        if(n==0)
            return 1;
        fun(n/r,r);
        if(n%r>=10)
        {
            int m=n%r-10;
            char c='A';
            printf("%c",c+m);
        }
        else
            printf("%d",n%r);
        return n;
    }
    int main()
    {
        int n,r;
        while(~scanf("%d%d",&n,&r))
        {
            if(n>0)
                fun(n,r);
            else if(n==0)
                printf("0");
            else
            {
                printf("-");
                fun(-n,r);
            }
            puts("");
        }
    }
    
  • 相关阅读:
    关于区间数颜色的主席树解决
    1020考试总结
    QR算法
    新的征程
    端点星2020.12.2联赛
    自我介绍&友链
    3个搜索
    搜索格式这样写
    T107073 归并排序
    还有这个题
  • 原文地址:https://www.cnblogs.com/zcy19990813/p/9702762.html
Copyright © 2011-2022 走看看