2017.3.23考试总结

从JZYZ回来后的第一次考试,估计是退役前为数不多的几堂考试之一了……
打开题目,t1是一道字符串……感觉要用SAM,这时候锟哥蹦出一句他做过把我吓得半死……想了会感觉不会做,滚去看t2
t2是道数学题……而且感觉在雅礼集训的时候考过类似的题?想了想觉得自己只会n^2就弃掉了。
看t3……这不是傻逼最小割吗……TMD居然没说 t 的数据范围……实在是佩服……不过感觉t太大这题也就没法做了?赶紧打了个最小割过了样例就去看t1了。
观察样例描述……感觉这玩意似乎是个背包啊……可惜背包复杂度是nmk的……只能拿到暴力分……然后发现这就是个矩阵乘法啊……拿right集合大小当下标,大概是一个m*m的矩阵,然后第i行j列系数是a[j-i]……复杂度似乎是m^3logk的……更加爆炸……难道需要用到那个玄学的FFT优化矩乘使得复杂度为mlogmk……?可是这个我不会啊怎么办办啊……无奈先打个背包了QwQ……
打完背包我看到了我的代码中有这么一句话……f[j]=a[j-l]*f[l]
噫……这不是卷积吗……所以似乎卷积k次就好了啊?卷积可以类似于快速幂一样优化至mlogmlogk……似乎很棒棒啊……突然发现这玩意是取模……特别尴尬……我没打过NTT啊……不过听说跟FFT差不多?那我手推试试吧……发现1005060097是个质数(暴力跑的),并且为 2193371+1 ,于是从5开始算原根……发现5满足要求了……天助我也啊……赶紧跑去写NTT……对拍了几组WA的数据然后改了改NTT……NTT的一血居然献给了考试我真TM服气……捣鼓半天最后对拍了几万组似乎没啥事,就去写t2了
t2推了半天……只发现这个约数个数是个积性函数……然后捣鼓半天+对拍……终于知道了如何处理a,b不互质情况下的f值,于是就用线性筛拿到了30分……
感觉不会写t2的更高部分分了……去看了看t1的极限数据……发现跑不过去……
于是写了个预处理wn……最后1min的时候发现对拍出来WA了!!!!!我的天啊!!!无可奈何……当时一个输出0一个输出一个奇怪的数……感觉输出0的肯定不可取……就把另一个程序交了上去……
测试结果出来20+30+100……t1居然炸成了20……发现我多维数组大小开反了Q(AQ)*……然后改完后是70……最后一个变量的问题导致70~100的坑……完全不知道为啥……问了大佬大佬也说不知道……感觉很尴尬啊……
t2不是很想去管……毕竟数学推导……再考一次的话我就真服了……

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值