提交时间:2024-08-20 20:48:09

运行 ID: 169957

#include <iostream> using namespace std; void mcf(int m, int n) { int r; if (m == 0) return; r=m%2; m=m/2; mcf(m, n+1); if (m!=0 && r!=0) { cout<<"+"; } if (r == 1) { if (n == 0) cout<<"2(0)"; else if (n == 1) cout<<"2"; else if (n == 2) cout<<"2(2)"; else { cout<<"2("; mcf(n, 0); cout<<")"; } } } int main() { int n; cin>>n; mcf(n, 0); return 0; }