3.17阿里云笔试个人题解

第一题:
不太懂,猜了个结论,当所有数和k的gcd不为1的时候输出No,不然就输出Yes,ac了,不知道是不是运气,希望有大佬指点一下。
第二题:
分奇偶01讨论,举个例子,有一个奇数为是0,该位对奇数答案的贡献是该位后面所有奇数位且为0的数,这里有个小细节,要包括该位置,也就是说奇数答案是lowerbound,偶数答案是upperbound,维护4个vector后upperbound和lowerbound即可ac。
第三题:
由于题目说了只影响子树,那么很自然的想到从根节点朝下dfs,dfs传参只需要额外传入两个参数代表奇数距离有无改变和偶数距离有无改变即可,如果在某一节点改变,需要把偶数改变位异或1,朝下传入把奇数改变和偶数改变换位即可(很好理解,因为子结点相对父节点的奇偶颠倒),统计答案完排序即可ac。
祝大家暑期顺利😂
全部评论
大佬太强了。第一题我这么考虑的,假如所有数的gcd为g, 假设某个数修改x次,如果gcd(g,k) = g1,最后表示就是g * ( ) +/- k * x,提出g1就是 g1 * ( )。所以和修改次数无关,gcd也和符号无关,所以gcd(g,k) 是最后所有数的gcd。
1 回复 分享
发布于 03-17 16:08 陕西
这是a了三题,真强啊
点赞 回复 分享
发布于 03-17 15:42 江苏
太牛了佬
点赞 回复 分享
发布于 03-17 15:44 美国
第三题dfs超时了 只有百分之20 谁知道是什么原因呢
点赞 回复 分享
发布于 03-17 15:47 北京
太强了
点赞 回复 分享
发布于 03-17 15:49 辽宁
牛逼
点赞 回复 分享
发布于 03-17 15:56 北京
大佬太强啦
点赞 回复 分享
发布于 03-17 15:58 上海
点赞 回复 分享
发布于 03-17 16:07 北京
楼主你是面的暑期吗?
点赞 回复 分享
发布于 03-17 17:25 北京
阿里云
点赞 回复 分享
发布于 03-22 17:55 日本

相关推荐

想润的芹菜人狠话不多:把其中一个老总放中间都会得罪另一个
点赞 评论 收藏
分享
10-31 10:34
已编辑
博尔塔拉职业技术学院 Java
求你们别卷了的猴子很忧伤:经伟恒润上次也这样,不是出差就是紧急会议,后面我直接拒了
点赞 评论 收藏
分享
12 26 评论
分享
牛客网
牛客企业服务