50'求调
查看原帖
50'求调
1406569
__ph__楼主2024/8/14 21:39

后10个MLE

#include <iostream>
#include <vector>
#include <string>

using namespace std;

vector<string> generateGrayCode(int n) {
    if (n == 1) {
        return {"0", "1"};
    }

    vector<string> previousGrayCode = generateGrayCode(n - 1);
    vector<string> grayCode(2 * previousGrayCode.size());

    for (size_t i = 0; i < previousGrayCode.size(); ++i) {
        grayCode[i] = '0' + previousGrayCode[i];
    }
    
    for (size_t i = 0; i < previousGrayCode.size(); ++i) {
        grayCode[grayCode.size() - 1 - i] = '1' + previousGrayCode[i];
    }

    return grayCode;
}

string getGrayCode(int n, int k) {
    vector<string> grayCode = generateGrayCode(n);
    return grayCode[k];
}

int main() {
    int n, k;
    cin >> n >> k;
    string result = getGrayCode(n, k);
    cout << result << endl;
    return 0;
}
2024/8/14 21:39
加载中...