
蓝桥杯
zoro_n
我想走得更远
展开
-
蓝桥杯 波动数列
点击打开链接 这题,我看完第一想法就是搜索, 看看数据,应该只能拿30分,,,, 后来看看网上题解,是dp 设首项为x,可以得到一个等式x+(x+P)+(x+2P)+...+(x+(n-1)P)=s,将这个式子整理一下,就是nx+P+2P+...+(n-1)P=s,即(s-(P+2P+...+(n-1)P))/n=x。 所以,p最多有 n*(n-1)/2 项, 那么枚举a,原创 2017-03-17 15:48:23 · 568 阅读 · 0 评论 -
蓝桥杯 PREV-34 矩阵翻硬币
题解: 这题有点麻烦,主要是因为数据太大。。 其实原理好推。 就是i和j为奇数个因子那么 他们的乘积就一定是奇数,满足题意, 接下来就是找,n,m分别的奇数因子的个数。 然后发现 n方 样例 的数因子数都为奇书, 就有转化到,求n,m 开方后的值,然后求积即可。 大数开方比较恶心。 这里采用的是逼近。 证明就不证明了。 #include #include #inc原创 2017-03-13 17:57:01 · 229 阅读 · 0 评论 -
蓝桥杯 兰顿蚂蚁
水题,直接dfs就行了。 #include #include #include #include #include #define LL long long using namespace std; const int maxn=1e2+10; const int mod=1e9+7; int a[maxn][maxn]; char way[6]="URDLU"; int bl原创 2017-03-13 20:45:40 · 311 阅读 · 0 评论 -
蓝桥杯 分糖果
点击打开链接 模拟就过了。 #include #include #include #include #include #define LL long long using namespace std; const int maxn=1e2+10; const int mod=1e9+7; int a[maxn],b[maxn]; int v[2000]={0},f=0原创 2017-03-14 11:21:53 · 296 阅读 · 0 评论 -
蓝桥杯 小朋友排队
点击打开链接 求逆序数,不用线段树,只能过50的数据。 用线段树,正着存一遍,逆着存一遍,正着存,求每个数前面比他大的数, 逆着,求后面比他小的数。 然后遍历一遍求和。 #include #include #include #include #include #define LL long long using namespace std; const int原创 2017-03-16 20:14:58 · 348 阅读 · 0 评论