洛谷P1199三国游戏

题目

博弈论+贪心。

由于我们是先手,所以我们其实是必赢的,而且其实选完前两次,就已经结束了,因为接下来选的每一次其实都没有我们前几次选的好。而且又因为机器人会把我们想选的最好的拿走,那我们就只能拿走次好的了。然后枚举排序就可以得出答案。

(Code)

#include <bits/stdc++.h>
#define int long long
using namespace std;
int data[1010][1010];
queue <int> q;
int ans, n;
inline void solve()
{
	for (int i = 1; i <= n; i++)
		ans = max(ans, data[i][n - 1]);
}
signed main()
{
	scanf("%lld",&n);
	for (int i = 1; i < n; i++)
		for (int j = i + 1; j <= n; j++)	
			scanf("%lld", &data[i][j]), data[j][i] = data[i][j];
	for (int i = 1; i <= n; i++)
		sort(data[i] + 1, data[i] + 1 + n);
	/*
	for (int i = 1; i <= n; i++, puts(""))
		for (int j = 1; j <= n; j++)
			printf("%d ", data[i][j]);*/
	solve();
		printf("1
%lld", ans);
}
原文地址:https://www.cnblogs.com/liuwenyao/p/10923819.html