编号 题目 状态 分数 总时间 内存 代码 / 答案文件 提交者 提交时间
#21538 #1002. B. 说服合伙人 Compile Error 0 0 ms 0 K C++ 11 (NOI) / 2.0 K 十三月 2020-02-08 3:21:43
显示原始代码
#include <iostream>
#include <string>
#include <cstring>
#include <ctime>
#include <cmath>
#include <fstream>
#include <cstdlib>
using namespace std;
struct pai {
    long long ana;
    long long bna;
    char naderen;
};
int main() {
    long a;
    cin >> a;
    pai* paizongliang = new pai[a];
    long long i = 0, k = 0;
    while (i < a) {
        cin >> paizongliang[i].ana >> paizongliang[i].bna;
        i++;
    }
    for (i = 0; i < a; i++) paizongliang[i].naderen = 'c';
    for (i = 0; i < a; i++) {
        for (long long j = i; j < a; j++) {
            pai zhongjian;
            if (paizongliang[i].ana < paizongliang[j].ana) {
                zhongjian = paizongliang[i];
                paizongliang[i] = paizongliang[j];
                paizongliang[j] = zhongjian;
            }
            if ((paizongliang[i].ana == paizongliang[j].ana) && (paizongliang[i].bna < paizongliang[j].bna)) {
                zhongjian = paizongliang[i];
                paizongliang[i] = paizongliang[j];
                paizongliang[j] = zhongjian;
            }
        }
    }
    i = 0;
    while (i < a) {
        if (i < a) {
            paizongliang[i].naderen = 'a';
            if (paizongliang[i].bna > min1(paizongliang, 'b', a)) {
                paizongliang[i].naderen = 'b';
                paizongliang[min2(paizongliang, 'b', a)].naderen = 'a';
            }
            i++;
        }
        if (i < a) {
            paizongliang[i].naderen = 'b';
            i++;
        }
    }
    for (i = 0; i < a; i++) {
        if (paizongliang[i].naderen == 'b')
            k = k + paizongliang[i].ana;
    }
    cout << k;
    return 0;
}
long long min1(pai ar[], char a, int b) {
    long long i = 0;
    long long j = 0;
    long long* k = new long long[b];
    *k = { 0 };
    for (i; i < b; i++) {
        if (ar[i].naderen == a) {
            k[j] = i;
            j++;
        }
    }
    i = j = 0;
    for (j; j < b; j++) {
        if (ar[k[j]].bna < ar[k[i]].bna)
            i = j;
    }
    return ar[k[i]].bna;
}
long long min2(pai ar[], char a, int b) {
    long long i = 0;
    long long j = 0;
    long long* k = new long long[b];
    *k = { 0 };
    for (i; i < b; i++) {
        if (ar[i].naderen == a) {
            k[j] = i;
            j++;
        }
    }
    i = j = 0;
    for (j; j < b; j++) {
        if (ar[k[j]].bna < ar[k[i]].bna)
            i = j;
    }
    return k[i];
}

编译信息

/sandbox/1/a.cpp: In function 'int main()':
/sandbox/1/a.cpp:53:55: error: 'min1' was not declared in this scope
    if (paizongliang[i].bna > min1(paizongliang, 'b', a))
                                                       ^
/sandbox/1/a.cpp:56:44: error: 'min2' was not declared in this scope
      paizongliang[min2(paizongliang, 'b', a)].naderen = 'a';
                                            ^