随笔分类 -  挑战程序设计竞赛第二章

摘要:#include <iostream> #include <string.h> #include <cstdio> using namespace std; //扩展欧几里得算法 //返回a、b的最大公约数 //求得的x、y是 a*x+b*y=gcd(a,b) 的一个特解 int exgcd(int 阅读全文
posted @ 2020-04-25 17:27 xiongbing 阅读(106) 评论(0) 推荐(0)
摘要:#include<cstdio> #include<iostream> #include<cstring> #include<string> #include<queue> #include<algorithm> using namespace std; int N; int L; int P; / 阅读全文
posted @ 2020-04-13 21:05 xiongbing 阅读(94) 评论(0) 推荐(0)
摘要:思路:对每一个格子来一个DFS,每个DFS跳五步 代码如下: 1 #include <iostream> 2 #include <cstdio> 3 #include <algorithm> 4 #include <set> 5 6 using namespace std; 7 8 int maze 阅读全文
posted @ 2019-11-29 07:33 xiongbing 阅读(172) 评论(0) 推荐(0)
摘要:由于n比较小,所以可以对行DFS,那列呢?其实列很好处理,对每一列统计1的个数或者0的个数,保留最大者即是最大的正面个数,试想如果当前列正面个数多,那这一列就不翻面就好了,如果反面多,那么将该列翻面即可使得原先反面变成正面。所以对列直接统计即可。 这题需要注意的是无论哪一行或者那一列先翻面都是无谓的 阅读全文
posted @ 2019-11-25 11:28 xiongbing 阅读(135) 评论(0) 推荐(0)
摘要:要得到最终的和,第一行每个数字出现的(及被加的)次数正好为一个杨辉三角,所以直接枚举第一行就可以了 AC代码: 1 #include <iostream> 2 #include <cstdio> 3 #include <algorithm> 4 5 using namespace std; 6 7 阅读全文
posted @ 2019-11-25 00:08 xiongbing 阅读(104) 评论(0) 推荐(0)
摘要:此题输入有点坑! 方法一:(dfs) 此题暴力可以水过,不过得选c++,g++不给过, 还有就是注意一下首个数字不能为零的问题: 代码: 1 #include <iostream> 2 #include <queue> 3 #include <cstdio> 4 #include <algorith 阅读全文
posted @ 2019-11-12 21:12 xiongbing 阅读(92) 评论(0) 推荐(0)
摘要:学习要点:如何使用map,以及如何把读入的整数变成字符串 阅读全文
posted @ 2019-11-10 16:41 xiongbing 阅读(128) 评论(0) 推荐(0)
摘要:模板BFS 阅读全文
posted @ 2019-11-06 20:50 xiongbing 阅读(124) 评论(0) 推荐(0)
摘要:卡了很久的BFS,有两个要点没注意(初学的caicai) 阅读全文
posted @ 2019-11-04 21:29 xiongbing 阅读(101) 评论(0) 推荐(0)
摘要:dfs,每次搜索沿着某个方向一直进行下去 阅读全文
posted @ 2019-10-20 21:11 xiongbing 阅读(105) 评论(0) 推荐(0)