WA on #1~5
查看原帖
WA on #1~5
1245629
woscxk楼主2024/2/24 21:42
#include<bits/stdc++.h>
using namespace std;
string turn(int n){
    stack<int> a;
    while(n>0){
        a.push(n%2);
        n/=2;
    }
    string m;
    while(!a.empty()){
        m+=char(a.top()+'0');
        a.pop();
    }
    return m;
}//10进制转2进制
string mcf(int n){
	if(n==0) return "0";
    if(n==1) return "2(0)";
    if(n==2) return "2";
    if(n==3) return "2+2(0)";
    string m=turn(n),s;
    for(int i=m.length()-1;i>=0;i--){
        if(i==m.length()-1){
            s+="2("+mcf(i)+")";
            continue;
        }
        if(m[i]=='1') s+="+2("+mcf(i)+")";
    }
    return s;
}
int main(){
    int n;
    cin>>n;
    cout<<mcf(n);
}

我感觉没问题吖;咋全WA 橙题全WA不好意思发

2024/2/24 21:42
加载中...