Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
168633 | C班-范浩宇 | 幂次方 | C++ | 通过 | 100 | 0 MS | 240 KB | 529 | 2024-08-20 12:26:30 |
#include<bits/stdc++.h> using namespace std; int n; void solve(int a){ if (a==0) cout<<0; else if(a==1) cout<<"2(0)"; else if(a==2) cout<<"2"; else{ int t=a,i=0; while(t) t>>=1,i++; bool f=1; for(i=i-1;i>=0;i--){ if((a>>i)&1) { if(f) f=0; else cout<<"+"; if(i==1) cout<<2; else cout<<"2(",solve(i),cout<<")"; } } } } int main(){ cin>>n; solve(n); }