UOJ Logo

NOI.AC

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#189211#3308. 踹安狗18112606231100161ms44972kbC++113.0kb2023-10-04 09:09:042023-10-04 12:31:52

answer

#include <bits/stdc++.h>
#define int long long
using namespace std;
int n, maxn = -1, jntm[21][21][21][21][21][21], aa[10001];
struct node
{
    int data, bh;
} a[100001];
bool cmp(node a, node b)
{
    return a.data > b.data;
}
signed main()
{
    scanf("%lld", &n);
    if (n <= 20)
    {
        for (int i = 1; i <= n; i++)
        {
            scanf("%lld", &aa[i]);
        }
        for (int i = 1; i <= n; i++)
        {
            for (int j = i + 1; j <= n; j++)
            {
                for (int k = j + 1; k <= n; k++)
                {
                    for (int ii = 1; ii <= n; ii++)
                    {
                        for (int jj = ii + 1; jj <= n; jj++)
                        {
                            for (int kk = jj + 1; kk <= n; kk++)
                            {
                                if ((i != ii && j != jj && k != kk && i != j && j != k && i != k && ii != jj && kk != jj && ii != kk) && (aa[i] + aa[j] > aa[k] && aa[j] + aa[k] > aa[i] && aa[i] + aa[k] > aa[j]) && aa[ii] + aa[jj] > aa[kk] && aa[ii] + aa[kk] > aa[jj] && aa[jj] + aa[kk] > aa[ii])
                                {
                                    if (i == jj || i == kk || j == ii || j == kk || k == ii || k == jj)
                                        continue;
                                    // cout << i << ' ' << j << ' ' << k << ' ' << ii << ' ' << jj << ' ' << kk << endl;
                                    maxn = max(maxn, aa[i] + aa[j] + aa[k] + aa[ii] + aa[jj] + aa[kk]);
                                    jntm[i][j][k][ii][jj][kk] = aa[i] + aa[j] + aa[k] + aa[ii] + aa[kk] + aa[jj];
                                }
                            }
                        }
                    }
                }
            }
        }
        for (int i = 1; i <= n; i++)
        {
            for (int j = i + 1; j <= n; j++)
            {
                for (int k = j + 1; k <= n; k++)
                {
                    for (int ii = 1; ii <= n; ii++)
                    {
                        for (int jj = ii + 1; jj <= n; jj++)
                        {
                            for (int kk = jj + 1; kk <= n; kk++)
                            {
                                if (jntm[i][j][k][ii][jj][kk] == maxn)
                                {
                                    printf("%lld %lld %lld %lld %lld %lld", i, j, k, ii, jj, kk);
                                    return 0;
                                }
                            }
                        }
                    }
                }
            }
        }
        puts("-1");
    }
    else
    {
        for (int i = 1; i <= n; i++)
        {
            scanf("%lld", &a[i].data);
            a[i].bh = i;
        }
        sort(a + 1, a + n + 1, cmp);
        for (int i = 1; i <= 6; i++)
        {
            printf("%lld ", a[i].bh);
        }
    }
    return 0;
}

详细

小提示:点击横条可展开更详细的信息

Test #1:

score: 10
Accepted
time: 0ms
memory: 3260kb

input:

6
687786726963580 676203373748984 426628665779852 783066834852223 788409887900962 36164560152862

output:

1 2 3 4 5 6

result:

ok ok

Test #2:

score: 10
Accepted
time: 8ms
memory: 44972kb

input:

20
665612175242670 838420208330677 801582841663181 573114053573948 570145522433228 906563303913564 9...

output:

2 6 10 14 15 16

result:

ok ok

Test #3:

score: 10
Accepted
time: 0ms
memory: 28036kb

input:

20
708734287831216 367988866435420 23858950707090 961945282338412 469845558417961 383310964188157 85...

output:

1 4 7 12 13 14

result:

ok ok

Test #4:

score: 10
Accepted
time: 25ms
memory: 2772kb

input:

100000
304796708724720 538498453876439 272022900179513 64771686604312 49795131913528 122642678650576...

output:

22622 54999 75246 24031 52777 33654 

result:

ok ok

Test #5:

score: 10
Accepted
time: 21ms
memory: 2768kb

input:

100000
401463590116672 574794159983290 679510855924367 3515016398868 18629359633336 309138826949560 ...

output:

87809 76243 45635 22922 56292 81774 

result:

ok ok

Test #6:

score: 10
Accepted
time: 20ms
memory: 2772kb

input:

100000
650414824324366 714620327617695 653497996245891 445204001954703 999391439747463 6263858934366...

output:

27505 22595 59610 55644 55277 16294 

result:

ok ok

Test #7:

score: 10
Accepted
time: 25ms
memory: 2768kb

input:

100000
798607481723665 787327190767517 225653256415115 264493391035298 38757884845343 63308908452898...

output:

43704 2022 24722 3286 86099 31306 

result:

ok ok

Test #8:

score: 10
Accepted
time: 25ms
memory: 2772kb

input:

100000
222887400037123 380435476311307 506633479487256 695689787367503 225141435774613 8716932685794...

output:

31077 34833 78501 46310 96772 88929 

result:

ok ok

Test #9:

score: 10
Accepted
time: 17ms
memory: 2772kb

input:

100000
838952301577456 578873649923363 470539024130216 112846678383640 777480768771310 9418113986474...

output:

6175 58426 151 11997 72534 85075 

result:

ok ok

Test #10:

score: 10
Accepted
time: 20ms
memory: 2772kb

input:

100000
1291082298539 329037669036270 339630396492775 140023099135725 423480310453938 842819131899076...

output:

96894 72680 67349 55542 35394 95072 

result:

ok ok

Extra Test:

score: 0
Extra Test Passed