1. luoguP4047 [JSOI2010]部落划分

    Date: Mon 05 November 2018
    Updated: Mon 05 November 2018

    In 5. OI.

    Tags: OI

    题目


    考虑将两两点之间的距离算出来并从小到大排序。

    显然,应该优先合并距离小且不在一个部落中点对。因为如果不合 …

    Read more
  2. luoguU50590 数字

    Date: Mon 05 November 2018
    Updated: Mon 05 November 2018

    In 5. OI.

    Tags: OI

    题目(num)


    我们可有用DP很快地求出用x个数字构成y的方案数

    f[i][j]=f[i-1][m-a[k]]
    

    其中a()为数字集合S中的数。


    主要难点在于题目中条件3:前后和相等奇偶和相等。考虑 …

    Read more
  3. luoguP3034 [USACO11DEC]牛摄影Cow Photography

    Date: Sun 04 November 2018
    Updated: Sun 04 November 2018

    In 5. OI.

    Tags: OI

    题目


    考虑对于任意两头牛a和b,假设a在b前面。

    他们在5张照片中,至少有3张照片,a在b前面,剩下一张可能是a移到了后面,还有一张可能是b移到了前面,但无论如何,至少有3张照片他们的相对位置保持不变。

    这 …

    Read more
  4. luoguP3621 [APIO2007]风铃

    Date: Sun 04 November 2018
    Updated: Sun 04 November 2018

    In 5. OI.

    Tags: OI

    题目


    什么时候不合法

    最大玩具深度(下文记为mx)比最小玩具深度(下文记为mn)大至少2。

    对于一根木棍,木棍左边连接有深 …

    Read more
  5. luoguP1291 [SHOI2002]百事世界杯之旅

    Date: Fri 02 November 2018
    Updated: Fri 02 November 2018

    In 5. OI.

    Tags: OI

    题目


    假设有n个不同名字

    先抽一次,必定抽出一个新的——ans+1

    再抽第二次,这时有(n-1)/n的概率能抽到新的,所以期望抽n/(n-1)次能抽到新的——ans+n/(n-1)

    再抽第三 …

    Read more
  6. luoguP1875 佳佳的魔法药水

    Date: Thu 01 November 2018
    Updated: Thu 01 November 2018

    In 5. OI.

    Tags: OI

    题目


    这道题目有点奇怪

    我交堆优化dijk,怎么样都A不掉,都只有10分。

    检查了7个小时,重构过,依然不行。

    然后放下尊严写邻接矩阵写堆优 …

    Read more
  7. luoguP1962 斐波那契数列

    Date: Wed 31 October 2018
    Updated: Wed 31 October 2018

    In 5. OI.

    Tags: OI

    题目


    #include<bits/stdc++.h>
    #define mo 1000000007
    #define md(a) ((a)%mo)
    #define ll long long
    #define fsb(a,b,c) for(int a=b;a<=c;a++)
    #define fbs(a,b,c) for(int a=b;a>=c;a--)
    using namespace std;
    struct mt{
     ll a[5 …
    Read more
  8. luoguP2052 [NOI2011]道路修建

    Date: Wed 31 October 2018
    Updated: Wed 31 October 2018

    In 5. OI.

    Tags: OI

    题目


    O(n)用树上DP或者拓扑跑一遍

    拓扑:当度为1时,加入队列,每次f[i]被加时,度--

    代码是树上DP的

    #include<bits/stdc++.h>
    #define N 1000010
    #define abs(a) ((a)>0?(a):(-(a)))
    #define mem(a,b …
    Read more

Social