codeforces 1053C Putting Boxes Together(树状数组)
codeforces 1053C Putting Boxes Together传送门题意:给你一个数组$a$,$a_i$代表第$i$个元素放在第$a_i$个箱子里面。并且,对于第i个元素,从一个箱子移动到相邻的箱子需要花费$w_i$点精力。现在有两个操作:1.把第i个元素移动的花费变为x2.查询[L
codeforces 1053C Putting Boxes Together传送门题意:给你一个数组$a$,$a_i$代表第$i$个元素放在第$a_i$个箱子里面。并且,对于第i个元素,从一个箱子移动到相邻的箱子需要花费$w_i$点精力。现在有两个操作:1.把第i个元素移动的花费变为x2.查询[L
##codeforces 954C. Matrix Walk(思维模拟)http://codeforces.com/contest/954/problem/C题意:现在有一个大小为xy的矩阵(x,y大小未知),然后规定A(i,j)的值为y(i-1)+j,并且每次移动只能往四个方向移动。现在输入一个数
http://codeforces.com/problemset/problem/949/B题目:一开始给你一个1到n全部放在数组奇数为的数组,然后每次数组最后的一个数放入最近的空位里,然后一直循环操作直到数组没有空位。题解:这题可以说是规律题,我发现的规律是后面每个数第i次移动的距离都是k2(i-
codeforces 616F Expensive Strings (广义后缀自动机)https://codeforces.com/contest/616/problem/F题意:给你n个字符串串,串$S_i$的权值为$c_i$,对于一个字符串$s$有函数$$F(s)=\sum_^c_ip_{s,i
codeforces 386C Diverse Substringshttps://codeforces.com/problemset/problem/386/C题意:对于字符串$s$有多样性$d(s)$表示字符串里面不同字符的个数,然后k从1到$d(s)$,问s有多少个的子串的多样性刚好等于k。题
###Bzoj2440 完全平方数(莫比乌斯容斥)####题意:找第k个不含完全平方数因子的数####题解:二分+莫比乌斯系数+容斥#include<bits/stdc++.h>using namespace std;const int maxn=1e5+5;bool isprime[m
BZOJ 1003 物流运输传送门题解:由因为天的数量的只有100,并且只有20个港口,数据量很小。因此,可以直接用最短路预处理第i天到第j天用同一种路径所需要的花费。然后,预处理之后,用一个简单的dp就可以了。$dp[i]=min(dp[j]+cost[j+1][i]+k)$其中$dp[i]$表示
Blockshttps://cn.vjudge.net/problem/POJ-3734题意:一排有n块砖,每块砖可以染成A,B,C,D四种颜色的其中一种,现在问你A颜色砖块有偶数个,B颜色砖块有偶数个的染色方法有几种?题解:这题虽然可以用矩阵快速幂的方法做,但也存在一种能秒杀这题的方法———生成函
struct AC_Automaton {int next[maxn][26];int fail[maxn];int end[maxn];int sz, root;int newNode() {for(int i = 0; i < 26; i++) {next[sz][i] = -1;}fai
题意:在三维空间中有n个点,对这个空间有多次操作,每次操作将所有孤儿点给删除。对于点(x,y,z)它是孤儿点当且仅当不存在一个点(x1,y1,z1)满足x1<x,y1<y,z1<z。问每个点在第几轮被删除题解:对于这个在队友的提示下知道是cdq分治的。从cdq分治第一反应是什么,偏