• 2022字节跳动笔试ak口糊(4月17日)


    60分钟ak,A题调了40分钟,牛客在线IDE不能断点调试,心态爆炸

    A:模拟,开个map<string, int>mp[11]存一下直接找就行了

    B:DP,记\(pre_i\)为从i往左拓展的最长的连续严格下降区间,\(suf_i\)为从\(i\)往右拓展的最长严格上升区间,对于每个位置\(i\):当\(pre_i>1 \&\& suf_i>1\)时,\(ans = max(ans, pre_i + suf_i - 1)\)

    C:数学,易知\((x+y)\%b = x\%b + y\%b\),设子区间的左右端点为[l,r],则区间和为\((pre_r-pre_{l-1}) \%b = pre_r \% b - pre_{l-1} \%b\),因此求前缀和\(pre_i = (pre_{i-1} + a_i) \% b\),找[1,i-1]中有多少个前缀和模b与\(pre_i\)相同即可,\(pre_i\)\(0\)也要计入答案

    D:DP,倒着跑即可,记\(dp_i\)为当前取\(i\)物品能获得的最大价值,\(suf_i = max(dp_i,dp_{i+1},...,dp_n)\)
    转移为\(dp_i = weight_i+ suf_{i+skip_i+1}\),最后输出\(suf_1\)即可

  • 相关阅读:
    例题
    经典模型
    定义
    洛谷p2564生日礼物andp2627修建草坪
    转自大佬的线段树
    c++String类
    随机数
    JVM知识点总结
    task5 模型融合 打卡
    task4 建模与调参 打卡
  • 原文地址:https://www.cnblogs.com/ruanbaiQAQ/p/16157355.html
Copyright © 2020-2023  润新知