04 2022 档案

摘要:正方形经过任意的旋转(90°)和翻转后,只能有8种情况,而非4!种。 解释如下: http://www.360doc.com/content/18/0407/14/30048172_743530034.shtml 可以用4种旋转和1种翻转,遍历到这8中情况。 例题: LCP 58. 积木拼接 先处理 阅读全文
posted @ 2022-04-25 10:23 80k 阅读(353) 评论(0) 推荐(0) 编辑
摘要:在进行普通的BFS时,会将新的节点加入队尾。 但是由于01BFS的路径长度可能为0,故使用双端队列记录节点。如果路径为0,则加入队头,否则加入队尾。 例题:LCP 56. 信物传送 leetcode 2290. 到达角落需要移除障碍物的最小数目 class Solution { public: in 阅读全文
posted @ 2022-04-25 08:31 80k 阅读(37) 评论(0) 推荐(0) 编辑
摘要:如果题目中数据较大,则尽可能将全部int替换为long long。因为很多地方都可能出现int*int爆int的情况 阅读全文
posted @ 2022-04-15 19:50 80k 阅读(64) 评论(0) 推荐(0) 编辑
摘要:基数排序的思想是,对于一个给定的基数,每次排序构建基数数量的桶,并将数分配到桶里。 可以用count数组对桶中的数量计数,并转化为前缀数组记录桶中数字的位置。 LeetCode 164. 最大间距题解 class Solution { public: int maximumGap(vector<in 阅读全文
posted @ 2022-04-15 10:19 80k 阅读(36) 评论(0) 推荐(0) 编辑
摘要:1、分治 2、记忆化 3、动态规划 https://codingcompetitions.withgoogle.com/codejam/round/0000000000877ba5/0000000000aa9280#problem #include <bits/stdc++.h> using nam 阅读全文
posted @ 2022-04-11 21:19 80k 阅读(33) 评论(0) 推荐(0) 编辑
摘要:想要将集合中数字分为两个总和相等的集合,可以使用启发式优化的方式。 方法为:将数字依次加入到,两个集合中,当前和较小的集合。 这样可以将两个集合的误差降到一个数字的大小(|n|)级别,而非sum(|n|). 阅读全文
posted @ 2022-04-11 11:41 80k 阅读(70) 评论(0) 推荐(0) 编辑
摘要:理论上unordered_map的存取速度很快。 但是在数据量很大的时候,哈希冲突过多会导致速度变慢。 此时可以使用map替代。(存疑) 同时,虽然unordered_map理论的插入是O(1),但是实际一秒只能运行1e5次左右,远低于1e8-1e9的数量级。 https://codeforces. 阅读全文
posted @ 2022-04-09 17:44 80k 阅读(831) 评论(0) 推荐(0) 编辑
摘要:方法1:使用round()函数 方法2:(long long)(num/2.+0.5); 如果不加0.5,则会舍去造成数据不准。 阅读全文
posted @ 2022-04-04 20:51 80k 阅读(328) 评论(0) 推荐(0) 编辑
摘要:https://codingcompetitions.withgoogle.com/codejam/round/0000000000876ff1/0000000000a45fc0#problem 1、利用总边数=度数/2。 2、为了解决度数不平衡的问题,交替使用T(随机传送)和W(邻接传送)操作。 阅读全文
posted @ 2022-04-04 20:49 80k 阅读(37) 评论(0) 推荐(0) 编辑
摘要:std::endl、std::ends、std::flush 位于头文件<ostream> 作用分别为: endl:Insert newline and flush (刷新缓存区并插入换行符) ends:Insert null character (插入空字符) flush:Flush stream 阅读全文
posted @ 2022-04-04 20:00 80k 阅读(444) 评论(0) 推荐(0) 编辑
摘要:在使用STL中的算法时一定要统一输入的数据类型。 否则会出现参数按照最右边进行解析的情况。 例如 对 vector<long long> v; long long res=accumulate(v.begin(),v.end(),0); 可能会返回错误的结果,因为模板对0解析是int型,内部求和也会 阅读全文
posted @ 2022-04-04 18:49 80k 阅读(52) 评论(0) 推荐(0) 编辑
摘要:可以使用R"()"令字符串中的内容不进行转义 例如 string str=R"(//str\n//)"; //string str(R"(//str\n//)"); 等 cout<<str<<endl; 结果为//str\n// 阅读全文
posted @ 2022-04-03 23:37 80k 阅读(2150) 评论(0) 推荐(0) 编辑
摘要:#pragma GCC optimize(3,"Ofast","inline") #include<bits/stdc++.h> #define fore(x,y,z) for(LL x=(y);x<=(z);x++) #define forn(x,y,z) for(LL x=(y);x<(z);x 阅读全文
posted @ 2022-04-02 08:45 80k 阅读(11) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示