乙個十進位制整數被叫做權勢二進位制,當他的十進位制表示的時候只由0或1組成。例如0,1,101,110011都是權勢二進位制而2,12,900不是。
當給定乙個n的時候,計算一下最少要多少個權勢二進位制相加才能得到n。
input
單組測試資料。
第一行給出乙個整數n (1<=n<=1,000,000)
output
輸出答案佔一行。
sample input
9sample output
9題解:無論給的什麼數,只要找到這個數中每個位中最大的那個數x就可以了,用x個數,每個數都是這麼長度的,其他位數的0和1自由分配就能組合成這樣的數。
#include #include #include #include #include #include using namespace std;
typedef long long ll;
char s[55]; // 如果位數很大,字串就很好的優勢了。
int main()
printf("%d\n",m);
return 0;
}
#include #include int main()
printf("%d\n", max);
return 0;
}
51nod 1413 權勢二進位制
乙個十進位制整數被叫做權勢二進位制,當他的十進位制表示的時候只由0或1組成。例如0,1,101,110011都是權勢二進位制而2,12,900不是。當給定乙個n的時候,計算一下最少要多少個權勢二進位制相加才能得到n。input 單組測試資料。第一行給出乙個整數n 1 n 1,000,000 outp...
權勢二進位制(51Nod 1413)
乙個十進位制整數被叫做權勢二進位制,當他的十進位制表示的時候只由0或1組成。例如0,1,101,110011都是權勢二進位制而2,12,900不是。當給定乙個n的時候,計算一下最少要多少個權勢二進位制相加才能得到n。input 單組測試資料。第一行給出乙個整數n 1 n 1,000,000 outp...
51Nod 1413 權勢二進位制
乙個十進位制整數被叫做權勢二進位制,當他的十進位制表示的時候只由0或1組成。例如0,1,101,110011都是權勢二進位制而2,12,900不是。當給定乙個n的時候,計算一下最少要多少個權勢二進位制相加才能得到n。input 單組測試資料。第一行給出乙個整數n 1 n 1,000,000 outp...