1027 Colors in Mars

xiaoxiao2025-10-31  3

题目大意:

三个数,转换为13进制,不足补0。

解题思路:

进制转换 代码如下:

#include<iostream> #include<cstdio> #include<fstream> #include<set> #include<cmath> #include<cstring> #include<string> #include<map> #include<vector> #include<iomanip> #include<cstdlib> #include<list> #include<queue> #include<stack> #include<algorithm> #define inf 0x3f3f3f3f #define MOD 1000000007 #define mem0(a) memset(a,0,sizeof(a)) #define mem1(a) memset(a,-1,sizeof(a)) #define meminf(a) memset(a,inf,sizeof(a)) //vector ::iterator it; //set<int>::iterator iter; typedef long long ll; typedef unsigned long long ull; using namespace std; char judge(int n) { if(n==10)return 'A'; else if(n==11)return 'B'; else if(n==12)return 'C'; else return n+'0'; } int main() { std::ios::sync_with_stdio(false); cin.tie(0); int a,b,c,la=0,lb=0,lc=0; char red[100]={0},blue[100]={0},green[100]={0}; cin>>a>>b>>c; while(a)//转换a { int t=a%13; red[la++]=judge(t); a/=13; } while(b) { int t=b%13; blue[lb++]=judge(t); b/=13; } while(c) { int t=c%13; green[lc++]=judge(t); c/=13; } reverse(red,red+la);reverse(blue,blue+lb);reverse(green,green+lc);//翻转一下 cout<<'#'<<setw(2)<<setfill('0')<<red<<setw(2)<<setfill('0')<<blue<<setw(2)<<setfill('0')<<green<<endl;//记得补0 //freopen("test.txt","r",stdin); //freopen("output.txt","w",stdout); return 0; }
转载请注明原文地址: https://www.6miu.com/read-5038797.html

最新回复(0)