pku2454.cpp
来自「这是ACM 方面的资料 是PKU的 北京大学的出来的」· C++ 代码 · 共 69 行
CPP
69 行
#include <stdio.h>
#include <algorithm>
#include <stdlib.h>
using namespace std;
typedef struct
{
int id;
int n;
} City;
City c[200];
int N;
bool cp(City a, City b)
{
return a.n > b.n;
}
void Solve()
{
int i;
int sum1, sum2;
City tmp;
int id1, id2;
for (i = 0; i < N * 3; i++)
{
scanf("%d", &c[i].n);
c[i].id = i + 1;
}
sort(c, c + 3 * N, cp);
sum1 = 0;
sum2 = 0;
for (i = 0; i < N; i++)
{
sum1 += c[i].n;
sum2 += c[i + N].n;
}
while (1)
{
id1 = rand()%N;
id2 = rand()%N + N;
tmp = c[id1];
c[id1] = c[id2];
c[id2] = tmp;
sum1 = sum1 + c[id1].n - c[id2].n;
sum2 = sum2 + c[id2].n - c[id1].n;
scanf("%*c");
if (sum1 > N * 500 && sum2 > N * 500)
{
for (i = 0; i < 3 * N; i++)
{
printf("%d\n", c[i].id);
}
return;
}
}
}
int main()
{
while (scanf("%d", &N) != -1)
{
Solve();
}
return 0;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?