1027 火星の色 (20分)
まず第一に、神は、最初の劉さんのブログを掲載しました
https://www.liuchuo.net/これはアドレスです
良いブラシPTA、強く推奨柳神、およびアルゴリズムのメモをブログしたいです
火星の人々は地球の人々と同様の方法で、自分のコンピュータで色を表します。すなわち、色は最初の2桁がためである6桁の数字で表されRed
、のための中央の2桁Green
、及びの最後の2桁Blue
。唯一の違いは、彼らが今3桁の数字(0と168の間のそれぞれ)に色を与え代わりに、16の基数13(0-9及びAC)を使用することで、あなたは、それら火星RGB値を出力するようになっています。
入力仕様:
各入力ファイルは、三進カラー値を含む行を占有する一つのテストケースを含んでいます。
出力仕様:
次の形式で出力火星RGB値をすべき各テストケースのために:第一の出力#
は、すべての英語の文字が大文字にされなければならない6桁の数字が続きます。単一色のみ1桁の長さである場合は、印刷する必要があり0
、その左に。
サンプル入力:
15 43 71
サンプル出力:
#123456
効果の対象に
バンドを変更することで、3つの10進数、16進数10、11はA、B、Cの代わりにすることによって13に変換されます。
ゼロでパディング下、各デジタル出力は、2であるべきです
コードは以下の通りです
#include<iostream>
#include<cmath>
using namespace std;
int main(void) {
int Red[3];
char r[7] = {'0'};
for (int i = 0; i < 7; i++) {
r[i] = '0';
}
cin >> Red[0] >> Red[1] >> Red[2];
for (int i = 0; i < 3; i++) {
while (Red[i]) {
if (Red[i] % 13 >= 10) {
r[i * 2 + 1] = Red[i] % 13+55;
}
else {
r[i * 2 + 1] = Red[i] % 13 + 48;
}
Red[i] /= 13;
if (Red[i] % 13 >= 10) {
r[i * 2] = Red[i] % 13 + 55;
}
else {
r[i * 2] = Red[i] % 13 + 48;
}
Red[i] /= 13;
}
}
printf("#");
for (int i = 0; i < 6; i++) {
printf("%c", r[i]);
}
return 0;
}