1. 程式人生 > >一個小遊戲

一個小遊戲

class 染色 2.0 name %d mat blog tdi algo

題目:

  給出一張圖,有點權,有邊權。

  兩個人輪流用最優策略染色,他們的得分是點權,加內部的邊權。

#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cstring>
#include<queue>
#include<math.h>
using namespace std;
int n,m;
double w[20000],ans;
int main()
{

    scanf("%d%d",&n,&m);
    for(int
i=1;i<=n;i++) scanf("%lf",&w[i]); for(int i=1,u,v,c;i<=m;i++) { scanf("%d%d%d",&u,&v,&c); w[u]+=c/2.0;w[v]+=c/2.0; } sort(w+1,w+1+n); int i=n; for(i=n;i>=1;i-=2) { ans+=w[i]-w[i-1]; } cout<<ans; return
0; }

一個小遊戲