萌新求解答
查看原帖
萌新求解答
959145
Archer_CJT楼主2023/8/19 11:03

大佬们求解答,我这个样例全WA了,看了半天没看出思路哪错了,大佬们能给点思路建议吗?

#include<iostream>
using namespace std;
typedef pair<int, int> PII;
const int N = 110;
PII arr[N];
void sort(PII arr[], int n)
{
    int a, b;
    for (int i = 0; i < n; i++)
    {
        for (int j = 0; j < n - i - 1; j++)
        {
            if (arr[j].first > arr[j + 1].first)
            {
                a = arr[j].first;
                arr[j].first = arr[j + 1].first;
                arr[j + 1].first = a;
                b = arr[j].second;
                arr[j].second = arr[j + 1].second;
                arr[j + 1].second = b;
            }
        }

    }
}
int main()
{
    int T, n, k;
    cin >> T;
    for (int i = 0; i < T; i++)
    {
        int tag = 0;
        cin >> n >> k;
        for (int j = 0; j < n; j++)
        {
            cin >> arr[j].first;
            cin >> arr[j].second;
        }
        sort(arr, n);
        int sum = 0;
        for (int j = 0; j < n; j++)
        {
            sum += arr[j].second;
            if (sum / k > arr[j].first)
            {
                cout << "No" << endl;
                tag = 1;
                break;
            }
            else if (sum / k == arr[j].first)
            {
                if (sum % k != 0)
                {
                    cout << "No" << endl;
                    tag = 1;
                    break;
                }
                else
                    continue;
            }
        }
        if (tag == 1)
            ;
        else
            cout << "Yes" << endl;


    }

    return 0;
}
2023/8/19 11:03
加载中...