纪中2016.8.16比赛不明总结

总结:

考得一般般:

估分:100+100+30+60=290

实际:90+100+40+50=280(排名八)

哈,这一次没有什么差错,除了一点的不细心和想多了,不然这套水题(除了第四题)就不会这么垃圾了。

考试经历:

T1看上去不用一点特殊的数据,不会过。我花了1个多钟头烧在这里,最后看了下终端数据,就感到100分。果断看T2。T2感到模拟人生是不可能过的,看着看着一个特殊的印象出现:三角形。然后就对了。T3看后,毫无头绪,没有一点语文基础的小蒟蒻绝对不懂,例:吕乐。T4一眼扫完,发现不对。原来是动态。(ノ=Д=)ノ┻━┻我想了想,果断打贪心。花了20分钟后,弃疗。水T3,T3又是想太多。“AC不能想太多,不能想太多~”发现自己可以简化与压缩后,泪奔。60分断送于此。

T1作弊(cheat) 

奶牛们又不听话了,要在考试时作弊,它们叫你(又是我)找出字符串内最大的回文串。表面上仿佛要用一些高端的人工智能。实际上不需要。在输入的s字符串,枚举以i字符为起点向两边拓展的最大回文,这样子可以优化很多的时间,也不用过多的判断(有6个n=10000的数据是什么鬼?)我的90分是因为没有用ansistring。就GG了。

正解:(威慑麽幼师我将刻,我将德布号,音位我项将蒂三提)枚举每个字符,以字符为起点,向两边拓展,判断,然后取最大的值,即可。时间复杂度O(N^2logN)(小插曲:今天中午,冯鸡与刘神犇在宿舍大吵马拉车算法,刘神犇说XC不会教马拉车,而且XC不会出这类型的题。而冯鸡说,马拉车很重要,数据大一点就必须要用马拉车(我想静静))。

T2最大杂置(set) 

现在要你从这2^n-1个子集中选出最多的子集,使这些子集能构成一个杂置。杂置是指任意两个集合没有包含或被包含的关系。此题我左看右看上看下看才用我那灵敏的眼睛看见此题可以用一个很神奇的东西来做:杨辉三角规律。

正解:杨辉三角第n层中间值,输出:Ans:=f[n+1,(n+2) div 2];然后就没有然后了。

T3

描述照片中建筑物高度发生变化的位置,计算出最少需要多少个矩型才能形成该照片。“AC不能想太多,不能想太多~”想多了,把输入老老实实地全部模拟出来,重高出枚举,结果发现一栋楼很难判断下面有没有其他楼,就开始很不开心地打程序,交了3次后,还是不满,在喃喃自语中,霎时发现我文件名大错。立刻改过来。水了一下,提交。

正解:把输入数据的y给去掉。只记录x。双for,枚举。如果a[i]=a[j]那么把a[j]记录成不可行。如果a[i]>a[j]那么就退出,ans要加1。在双for中,如果a[i]被标记,就不进入循环。

T4

计算草丛被清除的时刻总和的最小值。贪心可以过60分。(Are you KIDDING me???)这对喜爱dp的孩子很不公平(暗自微笑)。

正解:你必须从裤裆中抽出一个可以亮瞎你24K纯金护目镜狗眼的动态规划。

F[i,j,k]表示如果k是1:从第i点,到第j点的最短时间。如果k是2:从第j点到第i点的最短时间。

第一种情况:f[i,j,1]:=min(f[i+1,j,1]+(a[i+1]-a[i])*(n-j+i),f[i+1,j,2]+(a[j]-a[i])*(n-j+i));

第二种情况:f[i,j,2]:=min(f[i,j-1,1]+(a[j]-a[i])*(n-j+i),f[i,j-1,2]+(a[j]-a[j-1])*(n-j+i));

解释很简单,很容易理解,自己慢慢思(nao)考(bu)。记得加一个优质的快排。

总结:此次比赛终于又翻回来了,还是挺高兴的。(此处再次鄙视看LiuYuanHao的总结高分和看XC解题报告AK的人。)还是有的小细节不是特别注意,下次加油!!!

注意:纪中的题目很会玩,包装很好,看上去很难的样子,实际水到可以淹死你。

By Kevin Chuck

你可能感兴趣的:(纪中2016.8.16比赛不明总结)