您的位置:首页 > 其它

POJ 1906

2015-06-10 16:50 357 查看
#include <iostream>
#include <string>
#define MAXN 150
using namespace std;

int _m[MAXN];

string p[65] = {
"1",
"3",
"9",
"27",
"81",
"243",
"729",
"2187",
"6561",
"19683",
"59049",
"177147",
"531441",
"1594323",
"4782969",
"14348907",
"43046721",
"129140163",
"387420489",
"1162261467",
"3486784401",
"10460353203",
"31381059609",
"94143178827",
"282429536481",
"847288609443",
"2541865828329",
"7625597484987",
"22876792454961",
"68630377364883",
"205891132094649",
"617673396283947",
"1853020188851841",
"5559060566555523",
"16677181699666569",
"50031545098999707",
"150094635296999121",
"450283905890997363",
"1350851717672992089",
"4052555153018976267",
"12157665459056928801",
"36472996377170786403",
"109418989131512359209",
"328256967394537077627",
"984770902183611232881",
"2954312706550833698643",
"8862938119652501095929",
"26588814358957503287787",
"79766443076872509863361",
"239299329230617529590083",
"717897987691852588770249",
"2153693963075557766310747",
"6461081889226673298932241",
"19383245667680019896796723",
"58149737003040059690390169",
"174449211009120179071170507",
"523347633027360537213511521",
"1570042899082081611640534563",
"4710128697246244834921603689",
"14130386091738734504764811067",
"42391158275216203514294433201",
"127173474825648610542883299603",
"381520424476945831628649898809",
"1144561273430837494885949696427",
"3433683820292512484657849089281"
};

int fun(unsigned long long num);

int main()
{
//freopen("acm.acm","r",stdin);
unsigned long long  num;
unsigned long long  tem;
int index;
int i;
while(cin>>num)
{
if(num == 0)
{
break;
}
//    cout<<num<<endl;
if(num == 1)
{
cout<<"{ }"<<endl;
}
else
{
index = fun(num-1);
cout<<"{ ";
//cout<<index<<endl;
int j = 0;
for(i = 0; i < index-1; ++ i)
{
if(_m[i] == 1)
{
cout<<p[j]<<", ";
}
++ j;
}
if(_m[i] == 1)
{
cout<<p[j];

}
cout<<" }"<<endl;
}
}
}

int fun(unsigned long long num)
{
int i = 0;
while(num)
{
_m[i ++] = num%2;
num /= 2;
}
return i;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: