NowCoder Wannafly挑战赛22 A~D 一句话题解
Posted zhouzhendong
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了NowCoder Wannafly挑战赛22 A~D 一句话题解相关的知识,希望对你有一定的参考价值。
原文链接https://www.cnblogs.com/zhouzhendong/p/NowCoder-Wannafly22.html
高精度板子在手,rk3我有。
故事:
A题:迟到10分钟,急忙注册了个小号,急忙开题。
B题:我一开始还以为中间没有小写字母的不算,然后搞了好久,过了样例,交了一发wa掉了,然后才发现我的代码漏洞百出。改完之后发现样例过不掉,改成把中间没有小写字母的也统计进去的做法,过了样例,交一发AC
C题:B题打完我去吃饭了,8:30才回来。我已经忘了和角公式,百度一发,发现懒标记很好维护,然后就码呀码。10分钟码完交一发TLE 了。突然想起sin和cos函数的复杂度不是 O(1) ,赶紧把更新懒标记改成了和更新区间和差不多的做法。然后AC 了。
D题:我已经忘了有理函数的极限怎么求了,赶紧打开我自己的博客,赶紧学习了一下我以前写的学习笔记,发现不是一道难题。然而我比较傻,开始打多项式的运算符重载;打了一半发现要高精度,赶紧打开我的博客,拖我的高精度模板。写完然后过了样例,然后分析了一下复杂度发现不大行。于是突然发现只要保存最高位即可……然后改好过了样例交一发AC 了。
我今天居然没有犯大的傻逼错误?
一句话题解
A题:直接对于 $m$ 和所有 $a_i$ 求一个 gcd ,然后凡是这个 gcd 的倍数都可能出现。
B题:考虑先处理出以每一个点出发/结尾的只经过空格的路径条数,然后借着之前的那个处理出以每一个点结尾/出发的只经过一个头/尾字符(其他都是空格)的路径条数。然后就可以方便的统计答案了。
C题:这里直接放结论,剩下的全是模拟。关于结论的证明,可以到后面的连接里面找。https://www.cnblogs.com/zhouzhendong/p/Calculus.html
D题:线段树维护区间 sin和 、cos和;以及对于sin和cos分别维护一个懒标记。下传和更新直接通过和角公式搞就可以了。
我的提交记录:
A https://www.nowcoder.com/acm/contest/view-submission?submissionId=32031706
B https://www.nowcoder.com/acm/contest/view-submission?submissionId=32036110
C https://www.nowcoder.com/acm/contest/view-submission?submissionId=32044324
D https://www.nowcoder.com/acm/contest/view-submission?submissionId=32039750
以上是关于NowCoder Wannafly挑战赛22 A~D 一句话题解的主要内容,如果未能解决你的问题,请参考以下文章
牛客网NowCoder Wannafly挑战赛9 A.找一找(数据处理) C.列一列(sscanf)