首页 > 代码库 > 2016 大连网赛

2016 大连网赛

2016 大连网赛

总结:弱爆了,一题都没做出

 

1006   Football Games    HDU 5873 

1、题意:团队比赛,赢的+2,输的+0,平+1。给出最后分数,看是否符合。

2、总结:好像是有个定理判定这种序列,

s?1??+s?2??+...+s?i??≥i(i−1),对于所有1≤i≤n−1
s?1??+s?2??+...+s?n??=n(n−1),对于i==n 

技术分享
#include<iostream>#include<cstring>#include<cmath>#include<queue>#include<algorithm>#include<cstdio>#define max(a,b) a>b?a:b#define F(i,a,b) for (int i=a;i<=b;i++)#define INF 0x3f3f3f3f#define LL long longusing namespace std;const int N=21000;int main(){    int t,n;    int a[N];    while(~scanf("%d",&t))    {        while(t--){            scanf("%d",&n);            F(i,1,n)scanf("%d",&a[i]);            sort(a+1,a+1+n);            LL sum=0;            int j;            for(j=1;j<=n;j++){                sum+=a[j];                if(sum<(LL)j*(j-1))                    break;            }            if(sum!=(LL)n*(n-1)||j<=n)                puts("F");            else puts("T");        }    }    return 0;}
View Code

 

1007  Friends and Enemies HDU 5874  

1、题意:矮人岛,每两个人之间要么是朋友,要么是敌人。如是朋友,两人至少要有一块石头颜色相同;如是敌人,就不能有任何石头颜色相同。

2、总结:都没搞懂

(1)OEIS上一个公式   

(2)转化成最大二分图,n个点的图,要求有尽量多的边,并且不存在三元环。这个边数就是mm的下界,对于一个nn个结点的没有三元环的图,边数最大的就是完全二分图。

技术分享
#include<iostream>#include<cstring>#include<cmath>#include<queue>#include<algorithm>#include<cstdio>#define max(a,b) a>b?a:b#define F(i,a,b) for (int i=a;i<=b;i++)#define INF 0x3f3f3f3f#define LL long longusing namespace std;const int N=10000;int main(){    LL n,m;    while(scanf("%lld%lld",&n,&m)!=EOF)    {        /*        LL sum=(2*n*n+(n&1?-1:1))/8;   //IEOS上的公式        if(sum>m)puts("F");        else puts("T");        */                if(m>=n*n/4)puts("T");    //转化为最大二分图        else puts("F");    }    return 0;}
View Code

 

2016 大连网赛