
算法竞赛题解
文章平均质量分 80
白棂
还不如直接退役的痛苦算竞选手(失败的man)
展开
-
2024级SYUCT-ACM新生第一次训练 题解
由此我们可以发现,我们是从最低位(个位)开始求的,每次求一个数的个位数用n%10后,要向前一位求取这个位的数,所以n/10往前进一位,那么进两位就n/100,进三位就是n/1000以此类推。很简单想到,兔头与鸡爪的差除2为还差鸡的数量,但一只鸡只有两个鸡爪,当差值为奇数时,直接除以 2 会使答案少1,所以要提前加1。所以对于字符'a'加1后,实际上是将'a'对应的ASCII码值加1,'a'+1的值为98,对应ASCII码中的'b'。这道题给出的是一个简单的运算判断问题,我们需要判断给定的算式是否成立。原创 2024-10-14 17:15:23 · 1666 阅读 · 1 评论 -
牛客小白月赛102 补题 (A~C)
牛客小白月赛 102 (A~C) 题解原创 2024-10-12 15:47:37 · 404 阅读 · 0 评论 -
牛客周赛 Round 62_小红的中位数查询(easy)
当窗口大小等于区间长度时,由于窗口中的数有序,且区间长度为奇数,所以最中间的数为该段区间的中位数,同时该数也为以当前查插入数的位置为右端点区间的中位数。由此可以枚举出所有数组中所有长度等于k的区间的中位数,然后在根据右端点查询,代码时间复杂度大约为O(n*log n),在可接受范围内。先不断向窗口中按顺序插入数,利用二分函数lower_bound()找到该数的位置插入,可以保证该窗口的所有元素都是有序的。由于每一组测试样例的区间长度都相同,本题可以用一个长度为k的滑动窗口来维护查询每个区间的中位数。原创 2024-09-30 19:06:45 · 665 阅读 · 6 评论