Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
168939 A班邓淑文 幂次方 C++ 通过 100 1 MS 256 KB 593 2024-08-20 14:56:00

Tests(7/7):


#include <bits/stdc++.h> using namespace std; void p(int x){ vector<int> a; if(x==0){ cout<<"0"; return ; } if(x==2){ cout<<"2"; return ; } if(x==1){ cout<<"2(0)"; return ; } int y=x; while(y){ a.push_back(y%2); y/=2; } if(a.size()-1==1 && a[1]==1){ cout<<"2"; } else if(a[a.size()-1]==1){ cout<<"2("; p(a.size()-1); cout<<")"; } for(int i=a.size()-2;i>=0;i--){ if(a[i]==1 && i==1)cout<<"+2"; else if(a[i]==1){ cout<<"+2("; p(i); cout<<")"; } } } int main(){ int n; cin>>n; p(n); return 0; }


测评信息: