本地似乎无误,洛谷WA,求调
查看原帖
本地似乎无误,洛谷WA,求调
291358
Micro_Seven楼主2023/10/1 17:04
#include <iostream>
#include <string>
#include <vector>
using namespace std;

vector<string> f(int x)
{
    // 边界情况
    if (x == 1)
        return { " /\\", "/__\\" };

    // 取上一级的图形
    auto pattern = f(x - 1);
    // 拷贝成上下两份
    pattern.insert(pattern.end(), pattern.begin(), pattern.end());
    // 为上一半左侧增加锁进
    string indent(pattern.back().size() >> 1, ' ');
    for (int i = 0, e = pattern.size() >> 1; i < e; ++i)
        pattern[i] = indent + pattern[i];
    // 为下一半添加右侧图形
    for (int i = pattern.size() >> 1, e = pattern.size(); i < e; ++i)
        pattern[i] = pattern[i] + string(e - i - 1, ' ') + pattern[i];
    return pattern;
}

int main()
{
    ios::sync_with_stdio(false);
    cin.tie(nullptr);
    cout.tie(nullptr);

    int n;
    cin >> n;
    for (const auto& i : f(n))
        cout << i << '\n';

    return 0;
}

在本地运行似乎没有问题,但是在洛谷在线IDE与洛谷评测环境下WA。

请问各位大佬代码有什么错误?谢谢!

2023/10/1 17:04
加载中...