随笔分类 - 思维题
摘要:题目链接:https://leetcode.cn/problems/next-permutation/ 变式题目链接:https://leetcode.cn/problems/next-greater-element-iii/ 思路一:查找当前数值的下一个排序,相当于从个位起找到一个高位数值大于低位
阅读全文
摘要:链接:https://leetcode-cn.com/problems/number-of-digit-one/ 题意:给定数字n,计算所有小于等于n的非负数中1的个数和 思路:计算每一个位为1的情况,对于某位,numl-i-numr,numl是前缀,numr是后缀,计算i=1时前缀和后缀满足构成的
阅读全文
摘要:链接:https://leetcode-cn.com/problems/group-anagrams-lcci/ 思路: 对string排序后作为键值,map嵌套vector数组 万物皆可map,万物皆可sort class Solution { public: vector<vector<stri
阅读全文
摘要:链接:https://leetcode-cn.com/problems/count-good-meals/ 1711. 大餐计数 题意:一个长度为1e5的数组,计算有多少对数字可以组成2的次方,结果对1e9+7取余,数组最大值为2e20 思路:根据题意,组成的2的次方num范围为[0,2e40],只
阅读全文
摘要:链接:http://118.190.20.162/view.page?gpid=T72 思路:初始在最左边的最终一定在最左边,通过初始位置很容易计算出看作其碰撞后是穿越对方情况的ts后最终的落点,再对所有最终点排序和初始点进行映射后输出即可。 代码: #include<bits/stdc++.h>
阅读全文
摘要:题目链接:https://pintia.cn/problem-sets/994805342720868352/problems/994805406352654336 思路: cin和scanf输入的区别:cin输入一个溢出的数值时读入到变量内的是变量所能存储的最大值,而scanf则会将溢出后变量大小
阅读全文
摘要:题目链接:https://ac.nowcoder.com/acm/contest/9981/F 思路:计算牛牛和牛妹的相同选项为ans,最大值为一个人全对n+另一个人相同的选项正确ans,最小值为两个人所选的都错:0 收获:如果用scanf(" %c %s",)读入的时候可以在格式符前加sapce来
阅读全文
摘要:题目链接:https://ac.nowcoder.com/acm/contest/9982/J 思路:构造长度为n的数列: ,当这个公式内log是下取整时 n为27时相等,则只要在127的位置时间复杂度为O(n3),之后的时间复杂度为n2 log2~ n,由于log(1e5)<27,则在1~27使用
阅读全文