关闭

牛耳杯程序设计大赛总结

标签: c
1189人阅读 评论(0) 收藏 举报

虽然是个小小的比赛,还是写一个总结吧。

 

不知不觉患上了疑似神经衰弱的病,头已经晕了4天了,状态也不怎么好,勉强能够做题。 也算是这次比赛悲剧的一个小小的因素吧。

下面回顾整场比赛悲剧的过程:

 

A. 输入若干个个点(xi,yi),统计其中不同点的个数,水题,直接哈希,然后统计。  2Y 莫名其妙超时一次。

 

B. 给定一个图,求起点到终点的最短路,最短路的节点数不能超过K。    不知道怎么做。。 据说用SPFA,为dist数组加上一维,来记录经过了几个结点。

 

C.给定一个序列,定义B(i,j) = A[k]-A[i]+A[k+1]-A[i]+.......+A[j]-A[i] ,为区间i,j的权值,让你把这个序列划分成k个互不相交的区间,使得每个区间的权值和最小。  貌似是DP,没细想。

 

D.给定N个盒子,初始时第i个盒子里有a[i]个球,给定M个询问,询问的类型有 A a b ,把编号为a的盒子里加入b个球 ,B a b,从编号为a的盒子里拿出b个球,保证b<=a[a],C a b,

把a盒子里的球都倒进b盒子中,然后扔掉a盒子, Q a,询问球数第a少的盒子里的球数。      很明显要使用平衡树来维护。。不过不会写SBT,然后AVL没写出来。。

 

E.给定N个兔子的坐标,和M个洞穴的坐标,前两个洞穴为仓库,规定每个仓库里至少要有一个兔子,问使得所有的兔子进洞的路程和的最小值。   贪心,比赛时贪心的策略错了,导致一直WA,贪心的策略是先让兔子进离他最近的洞穴,得到最小值,然后在去枚举第一个洞穴和第二个洞穴的情况,求出最小值。

 

F.求快速幂 1Y

 

G.卡特兰数.    忘记了卡特兰数的递推公式,导致一直没做出来。

 

H. 给定二进制序列,求把第一个序列变成第二个序列的最小操作数,操作的规则是对于第i个位置,将其翻转过来,如果其右边的相邻的第一个位置存在,那么也将其翻转。

    其实贪心就可以解决的,然后SB一样的先BFS,TLE,TLE,TLE,TLE,TLE,WA,WA,WA 最后想到用双广搜 13Y,罚时罚到蛋碎。

 

最后3题,15名,水到家了。

 

 

最后总结: 每次一到比赛就开始不淡定,没次都不停的看RANK,而且平时不刻苦训练,不注重思维的训练,到比赛的时候一个AVL都写不出来,深刻进行自我检讨。

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:72328次
    • 积分:1445
    • 等级:
    • 排名:千里之外
    • 原创:70篇
    • 转载:9篇
    • 译文:0篇
    • 评论:2条
    最新评论