码迷,mamicode.com
首页 > 其他好文 > 详细

1027 Colors in Mars (20 分)

时间:2021-02-16 12:26:18      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:get   else   turn   inline   mars   题目   i++   ret   pause   

由于题目的数据范围为[0, 168],因此给定的整数x在十三进制下一定可以表示为\(x=a*13^1+b*13^0\)(因为\(168<13^2\)),于是只要想办法求出a跟b即可。

对上面的等式两边同时整除13,可以得到\(\lfloor x/13 \rfloor =a\);对上面的等式两边同时对13取模,可以得到\(x%13=b\)。这样就得到了a与b,接下来只需要输出即可。

char get(int x)
{
    if(x<10) return ‘0‘+x;
    else return x-10+‘A‘;
}

int main()
{
    int a[3];
    for(int i=0;i<3;i++) cin>>a[i];

    cout<<‘#‘;
    for(int i=0;i<3;i++) cout<<get(a[i]/13)<<get(a[i]%13);
    //system("pause");
    return 0;
}

1027 Colors in Mars (20 分)

标签:get   else   turn   inline   mars   题目   i++   ret   pause   

原文地址:https://www.cnblogs.com/fxh0707/p/14399538.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!