WA 96 分求助
查看原帖
WA 96 分求助
932039
lzy20091001楼主2024/4/3 18:04
#include <iostream>
#include <algorithm>

struct Monster
{
    int id, d, a;
};

Monster game[100005];

bool cmp(Monster x, Monster y)
{
    if (1ll * (x.d - x.a) * (y.d - y.a) < 0)
        return x.d < x.a;
    if (x.d <= x.a)
        return x.d < y.d;
    return x.a > y.a;
}

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

    int n, z;

    std::cin >> n >> z;
    for (int i = 1; i <= n; i++)
    {
        game[i].id = i;
        std::cin >> game[i].d >> game[i].a;
    }

    std::sort(game + 1, game + n + 1, cmp);
    for (int i = 1; i <= n; i++)
    {
        if (z - game[i].d <= 0)
        {
            std::cout << "NIE" << "\n";
            return 0;
        }
        z += game[i].a - game[i].d;
    }

    std::cout << "TAK" << "\n";
    for (int i = 1; i <= n; i++)
        std::cout << game[i].id << " ";
    std::cout << "\n";

    return 0;
}
2024/4/3 18:04
加载中...