pat 1027 Colors in Mars(20 分)

1027 Colors in Mars(20 分)

People in Mars represent the colors in their computers in a similar way as the Earth people. That is, a color is represented by a 6-digit number, where the first 2 digits are for Red, the middle 2 digits for Green, and the last 2 digits for Blue. The only difference is that they use radix 13 (0-9 and A-C) instead of 16. Now given a color in three decimal numbers (each between 0 and 168), you are supposed to output their Mars RGB values.

Input Specification:

Each input file contains one test case which occupies a line containing the three decimal color values.

Output Specification:

For each test case you should output the Mars RGB value in the following format: first output #, then followed by a 6-digit number where all the English characters must be upper-cased. If a single color is only 1-digit long, you must print a 0 to its left.

Sample Input:

15 43 71

Sample Output:

#123456
 1 #include <iostream>
 2 #include <algorithm>
 3 #include <cstdio>
 4 #include <cstring>
 5 #include <map>
 6 #include <stack>
 7 #include <vector>
 8 #include <queue>
 9 #include <set>
10 #define LL long long
11 using namespace std;
12 const int MAX = 30;
13 
14 void calc13(int n)
15 {
16     stack <char> st;
17     while (n)
18     {
19         int temp = n % 13;
20         if (temp >= 10) st.push('A' + temp - 10);
21         else st.push('0' + temp);
22         n /= 13;
23     }
24     int len = 2 - st.size();
25     while (len --)
26         cout <<'0';
27     while (st.size())
28     {
29         cout <<st.top();
30         st.pop();
31     }
32 }
33 
34 int main()
35 {
36     int a, b, c;
37 //    freopen("Date1.txt", "r", stdin);
38     scanf("%d%d%d", &a, &b, &c);
39     cout <<'#';
40     calc13(a) ,calc13(b) ,calc13(c) ,
41     cout <<endl;
42     return 0;
43 }

 

posted @ 2018-09-04 10:07  GetcharZp  阅读(151)  评论(0编辑  收藏  举报