BZOJ各题算法

bzoj刷题列表(by——hzwer) BZOJ1601 BZOJ1003 BZOJ1002 BZOJ1192 BZOJ1303 BZOJ1270 BZOJ3039 BZOJ1191 BZOJ1059 BZOJ1202 BZOJ1051 BZOJ1001 BZOJ1588 BZOJ1208 BZOJ1491 BZOJ1084 BZOJ1295 BZOJ3109 BZOJ1085 BZOJ1041 BZOJ1087 BZOJ3038 BZ... 阅读详情

1000:A+B
1001:平面图最小割,转对偶图最短路
1002:矩阵树定理,也可以通过推矩阵的递推关系得到递推式
1003:最短路+DP
1007:半平面交
1008:组合数学,需要高精
1010:斜率优化/四边形不等式推决策单调性
1012:线段树
1014:Splay维护字符串的Hash值
1016:矩阵树定理,相同权值压联通块,对一个联通块用一次矩阵树定理计算方案数,累积答案 也可以DFS
1023:仙人掌DP找直径
1031:直接构建出倍长后串的SA,用rank数组做
1034:贪心
1036:树链剖分/LCT
1038:半平面交
1041:数论,推一下公式 也可以用一种跟勾股定理相关的做法
1043:计算几何,细节已忘.
1050:并查集,细节已忘.
1053:爆搜
1054:模拟
1059:二分图最大匹配,对行和列做点
1061:不等关系转费用流建图
1066:最大流
1067:线段树分类讨论
1070:费用流
1072:状压DP,据说暴力可过
1083:最小生成树
1087:状压DP
1088:枚举状态,暴力
1089:找规律,需要高精,也可以用组合数学推一下
1092:模拟
1095:动态树分治,或者dfs序线段树维护括号序列
1099:线段树+分类讨论
1101:莫比乌斯反演,同HAOI ProblemB
1103:dfs序,或者链剖
1106:树状数组.考虑记录下每个元素上一次出现的位置,然后BIT搞一搞.
1112:权值平衡树,中位数相关.
1113:好像是单调栈扫一扫就没了.
1121:一个结论题,答案是n/2.
1131:树形DP一下.
1132:答案的式子可以看出一个坐标的前缀和,优化一下暴力.
1143:利用那些图论定理,最长反链=n-最大匹配.
1145:很多种情况,BIT维护一下然后把这些情况加加减减.网上有WJMZBMR题解.
1146:一个比较模板的题…为了不被卡常卡空间可以考虑把其中一维搞上整体二分.
1167:空数据,Python 2B
1176:cdq分治,或者kdtree
1180:LCT
1191:二分图最大匹配
1192:考虑二进制分解.
1193:大规模贪心,小规模暴力.
1195:状压DP,与某道TC SRM一样.
1202:加权并查集,维护前缀和.
1208:权值平衡树.
1213:二分,Python.
1214:空数据,Python 2B
1227:组合,容斥,二维BIT.建议看黄学长题解.
1269:区间Splay裸题.
1307:题意是找最大的一个区间使得区间内为一个排列.记录前驱后继,可以得到符合条件的判定关系与区间长度,区间最大值最小值差有关.通过前驱后继来查询这个东西.
1318:同1307
1336:最小圆覆盖
1337:同1336
1342:对当前区间搞了个set.
1345:规律+结论题,附核心代码,我也不知道怎么证的

for (int i=1;i<=n;i++)
    {
        in(a[i]);
        if (i>=2)
        {
            if (a[i]>maxn)  sum+=a[i];
            else    sum+=maxn;
        }
        maxn=a[i];
    }
    cout<<sum<<endl;

1351:空数据,Python 2B
1360:空数据,Python 2B
1370:并查集.(这不是某NOIP题吗
1379:答案就是m.忘了为什么了.
1398:KMP最小表示,卡SAM内存.
1406:数论,找质因子搞一搞.
1419:DP一下.枚举选到了i张红的,然后1~b枚举选到了多少黑的.似乎需要滚一下数组压内存.
1453:方法很多,提供四个.1.LCT维护删除时间最大生成树 2.cdq分治+并查集 3.A*爆搜 4.线段树维护连通性
1482:空数据,Python 2B
1492:斜率优化,因为状态点的x不单调,所以需要平衡树或者cdq分治
1500:区间Splay.
1502:Simpson积分.
1503:权值平衡树
1513:二维线段树
1529:答案是联通块个数,并查集或者Tarjan都可以.
1532:二分答案,最大流判定.
1543:同JSOI2008最小生成树计数.
1563:四边形不等式推出决策单调,二分决策点.
1568:李超线段树.
1588:权值平衡树.
1798:线段树双标记.但是我是拿LCT写的.
1800:暴力
1821:二分答案+并查集
1853:爆搜
1857:三分套三分.
1875:矩乘优化DP
1876:Python题,直接GCD
1877:拆点费用流
1878:离线处理+树状数组
1879:状压DP
1880:四遍最短路,然后DP一下
1898:可以发现每12次还是6次一个循环,然后对大范围矩乘一下,剩下的一点暴力DP出来.
1902:考虑p进制拆分,答案是拆分后每一位+1的乘积 证明好像是考虑Lucas定理的
也可以数位DP+组合数学,但是无论哪种做法都需要Python高精度
1907:树的最小路径覆盖,可以直接树DP/贪心
1922:分层图最短路
1923:高斯消元.
1924:强联通分量缩点最长路
1925:DP.需要用到一些抖动子序列的性质.
1941:kdtree最远点
1951:数论板子合集.
1968:枚举1~n统计n/i的和
1969:LCT维护两点间桥边数量,不知道当年标算是什么但应该不是LCT吧
1979:二分答案,用平衡树判定.
1984:链剖/LCT裸题.
1997:平面图判定.需要平面图理论.
2000:可以贪心的博弈问题.网上很多证明.
2001:可以LCT,也可以cdq,cdq的话需要很多最小生成树的性质.
2002:可以LCT,可以分块.
2003:特技爆搜.
2004:矩乘优化DP
2005:莫比乌斯反演
2006:线段树+堆维护五元组
2012:容斥+组合,同SDOI2013Spring
2013:DP+二分
2045:同POI2007Zap
2049:国内第一个LCT
2051:点分治
2054:并查集的特技
2056:嘿嘿嘿
2064:状压DP
2089:同2090.
2090:权值线段树优化一下DP.感觉这个DP好像并不一定对啊…但是大家好像都是这么写的.
2093:左右端点移动一下找到目标位置,然后倍增.
2096:单调队列搞一搞
2111:组合数搞一搞,需要Lucas
2117:同2051
2141:cdq分治
2151:堆+贪心
2154:莫比乌斯反演,有很多种公式化法,我的好像是比较傻逼的那种…
2157:LCT,随便打标记
2163:直接最小割过了,其实应该转对偶图然后最短路才对.
2186:考察线性的逆元求法.
2190:反演分析一下,最后却发现答案是个跟phi有关的表达式…
2213:DP乱搞一下.附核心代码

for (int i=2;i<=n;++i)   ch[i]=getchar(),maxn=max(maxn,ch[i]-'a');
    for (int i=1;i<=n;++i)
    {
        int y=ch[i]-'a';
        for (int j=0;j<=maxn;++j)
        {
            ++f[j][y];--f[y][j];
            if (!g[y][j])   g[y][j]=1;
            else    if (g[y][j]==2) --g[y][j],++f[y][j];
            if (f[y][j]<0)   f[y][j]=-1,g[y][j]=2;
            if (g[y][j])    ans=max(ans,f[y][j]);
            if (g[j][y])    ans=max(ans,f[j][y]);
        }
    }

2216:显然权函数单调,满足四边形不等式,决策单调.
2222:似乎数据有问题还是什么?面向数据了一波.
2223:主席树
2229:GHTree
2241:暴力枚举答案然后检测,检测时候需要特技,感觉理论复杂度并不对但是过了
2243:链剖或者LCT,我写的链剖
2244:cdq分治做三维偏序的DP,答案实际上可能非常大会爆…但是出题人十分懒惰没管那样的数据,所以double就过了
2275:考虑斐波那契分解.有一个定理,然而并不会证明.
2280:倍增+最小圆覆盖,卡评测好题.
2288:线段树优化费用流,模拟费用的取反什么的.5倍经验.
2295:乱搞.附核心代码

char ch[MAXN],tmp[20]={'l','u','v','l','e','t','t','e','r'};
int main()
{
    for (scanf("%d",&T),getchar();T;T--)
    {
        gets(ch+1);n=strlen(ch+1);ans=0;
        for (int i=1,j=0;i<=n;i++)
        {
            j+=(ch[i]==tmp[j]);
            if (j>=9)    j=0,ans++;
        }
        printf("%d\n",ans);
    }
}

2296:找到一个P=987654321*10^6,答案就是(P+n)-(P+n)mod n
2299:裴蜀定理
2300:平衡树维护凸包.因为求的是凸包周长,所以贡献不可累积,故不能分治.
2301:莫比乌斯反演.同POI2007Zap
2326:矩乘.
2336:模拟退火
2344:暴力找三元环.
2351:Hash
2377:同POI2012 A Horrible Poem
2378:PA2011Kangaroo kdtree 把序列[L,R]看成点(L,R) 然后查询的就是右下角的矩阵,打一些标记搞一搞.
2393:同SCOI2010幸运数字
2395:二维最小乘积生成树,裸.
2428:模拟退火
2433:计算几何.
2434:AC自动机+线段树.
2438:强连通分量.
2440:莫比乌斯函数的应用,实际上就是容斥.
2448:区间DP,线段树优化,卡普通线段树常数,需要zkw线段树.
2456:卡内存…乱搞
2458:分治,分治子结构内暴力+剪枝
2460:线性基
2461:乱DP一波
2462:同2351Hash
2463:根奇偶有关的博弈,一眼看出规律,证明可以考虑转化成骨牌铺满格子的问题.
2464:裸最短路
2467:矩阵树定理
2506:小范围直接记录答案,大范围暴力.
2514:同HNOI2010那个.
2527:整体二分.
2555: LCT维护SAM Parent树Right集合
2568:按位考虑的乱搞树状数组,大量逻辑混乱…
2588:找dfs序,树上建个主席树
2594:LCT
2595:斯坦纳树.
2600:贪心,找规律,中位数相关
2618:半平面交
2623:RGB识别系统的弱化.湖南当年请的教授出题真厉害…
2626:kdtree+堆
2631:LCT+双标记
2639:二维莫队.
2642:可以发现一次删一段连续的一定是最优的,所以二分一下删的长度,半平面交
2648:kdtree
2654:二分答案然后最小生成树
2656:Python题
2657:实际上就是让你找直径,没有三角剖分的姿势也没事
2659:直觉型数学题
2660:DP一下.
2661:费用流
2662:分层图最短路
2671:类似莫比乌斯反演,推一推式子就行了
2683:我写的cdq
2697:贪心
2705:莫比乌斯反演
2716:cdq分治
2717:奇怪的姿势枚举一发


for (int i=1;i<=(n>>1);i++)    for (int j=0;j<n;j++)    printf("%d %d %d\n",j+1,(j+i)%n+1,(j+i+i)%n+1);

2718:同CTSC2008祭祀
2721:随便化一下式子
2724:分块
2729:组合数,需要Python
2732:二分答案半平面交判定
2733:平衡树启发式合并.
2738:整体二分,也可分块
2739:四边形不等式,然后发现决策单调,然后分治找决策点
2741:分块套可持久化trie
2751:根据题目找一个性质啥的…细节已忘
2753:本意是求最小树形图,实际上因为题目特殊所以可以BFS一遍然后做最小生成树
2754:AC自动机fail树+容斥,实际上暴力也过了.
2759:题目给的是个环套树,对LCT维护一个额外的father,然后扩欧求答案
2761:妈的智障…
2763:分层图最短路
2783:dfs时候维护一下set
2786:DP一下,需要Python
2789:还是考虑上个位置,然后树状数组乱搞一下
2795:hash,对一段数枚举约数然后判定
2796:记忆化搜索
2809:权值平衡树启发式合并,或者左偏树
2812:空数据,Python 2B
2813:斐波那契数性质的应用,线筛时候记录一下质因子,约数个数之类的
2814:人生写过最码农的题,可以LCT可以链剖,只不过都得维护30来个量
2815:支配树弱化版,倍增
2816:LCT
2818:同SDOI2012Longge的问题
2822:卡特兰数相关,需要Python
2823:最小圆覆盖
2824:好像是个A*,我面向数据了一波
2843:LCT
2850:kdtree
2851:灭绝树.
2862:二分limit,dp
2864:计算几何+最大流
2875:矩乘
2883:树套树,线段树套平衡树,但是我写的是线段树套权值线段树
2886:显然先从整个矩形的边界上走比较好,可以发现转一下就是杨辉三角,再然后就没别的了
2888:LCT维护树的重心,需要启发式合并
2890:同POI2012 A Horrible Poem
2896:同AHOI2005航线那题
2901:可以发现能用前缀和做…
2908:考虑建32位的信息维护,链剖或者LCT
2916:暴力
2936:灌水法,堆+爆搜
2937:写了个n^2暴力就能过
2946:SAM时刻记录匹配上的最大值
2957:线段树维护一段区间斜率
2961:圆的反演,然后就成了cdq分治做半平面交
2976:模拟一下得到一堆同余方程,扩欧找最小解
2986:把2440反过来,做法一样
2987:类欧裸题,然而还是不是很理解类欧
3038:记录区间最大值,如果还能开根,暴力下放,最多开根lglg次
3040:平板电视+Dij
3043:乱搞一发,附核心代码

in(n);for (int i=1;i<=n;++i) in(a[i]);
    for (int i=n;i;--i) a[i]-=a[i-1],ans1+=(i>1)*a[i]*(a[i]>0),ans2+=(i>1)*(-a[i])*(a[i]<0);
    cout<<max(ans1,ans2)<<endl<<abs(ans1-ans2)+1<<endl;

3051:平面图求域+点定位.
3052:莫队上树.
3053:高维kdtree
3064:线段树+标记+时间戳.
3069:LCT维护是否存在桥边,实际上可以并查集
3070:考虑固定指数,把底数慢慢往上调,比较难写,于是我当时面向数据了一发
3072:神DP.建议看Claris题解.
3073:线段树优化建图最短路
3084:扩展KMP.建议看Claris题解
3098:生日攻击.
3100:根前面那个什么 玩具 是一样的.
3103:跑一边马拉车,然后并查集缩点一下,就成了弦图染色问题.
3110:整体二分
3117:链表+堆搞了一下,看似不科学实际上飞快
3130:显然费用的分配是可以贪心的.然后二分.
3132:二维树状数组
3153:TopTree/ETT+LCT 然而出题人的做法不是这两个…
3155:树状数组乱搞一下
3170:链剖
3172:建出多串后缀自动机,直接搞
3176:显然要考虑逆序对什么的,然后还需要树状数组,附核心代码

for (int i=1,last;i<=n;i=last+1)
    {
        for (last=i+1;a[last-1]>a[last]&&last<=n;last++);last--;
        for (ans++,l=i,r=last;l<r;swap(a[l++],a[r--]));
    }
    for (int i=n;i;i--) ans+=query(a[i]),add(a[i]);
    cout<<ans<<endl;

3178:循环构成了一个树形结构,然后就可以DP了
3180:单调栈乱搞 需要SPJ 但是我好像恰巧跟std策略相同,直接A了
3181:大质数暴力,小的二分乱搞一下
3196:树套树
3197:树Hash+乱搞
3198:容斥+组合
3199:显然图是个V图,半平面交弄出来,然后最短路
3203:计算几何,答案在凸壳上,三分一下
3209:数位DP+数论
3211:同 上帝造题七分钟2
3223:区间Splay裸题.
3224:权值平衡树
3226:把区间拆成两倍来处理开闭问题,然后线段树就行了,可以看成区间加减01,区间覆盖01的问题
3228:把整个坐标系旋转45°,然后就成了扫描线sb题,问题在于统计的不是面积而是格子…所以细节非常麻烦
3229:满足四边形不等式然后DP就好了
3231:矩乘
3236:莫队/树套树/cdq分治.
3237:我写的cdq分治,实际上也有别的做法
3238:后缀自动机Parent树上DP一下
3243:基于随机化的乱搞
3251:注意到fib数没多少项就爆int了,所以暴力
3252:dfs序,然后变成了rmq问题,写个线段树
3260:同2886
3262:cdq分治维护三维偏序
3267:同2288.
3268:ST表搞一搞.source里都给写了题解了…
3272:同3267
3277:SAM基本应用
3282:LCT
3283:BSGS.
3295:cdq分治.注意每次修改会产生更多额外的贡献要单独减去的
3309:莫比乌斯反演
3323:序列平衡树维护多项式
3329:把两问分别考虑,一个数位DP一个矩乘
3339:跟SDOI2008HH的项链方法差不多,也是离线然后考虑找到前驱后继线段树做
3350:同3103
3417:对一个环可以重复走多次每次长度都是+2的,所以第一次BFS看看路径长奇偶就行了.
3424:跟dfs序有关.有波兰人论文.
3439:建trie,对trie dfs一遍,同时建立主席树
3463:分块维护凸壳
3473:同3277
3482:SPFA预处理含x条边的情况然后做.建议看Claris题解.
3483:建trie,可以发现询问能跟trie的dfs序对应起来,所以再建一棵主席树.
3489:我写的3d kdtree
3493:同HNOI2010那个
3495:考虑2-SAT建图.安利Claris题解.
3498:枚举三元环,我拿度数倍数判的实际上应该是根号度数…
3500:OEIS有数列
3501:把3501加点数论特技,CRT什么的…
3502:同3272
3505:组合数一下
3514:LCT.记录下某条边被加入成环,主席树统计答案.
3522:树DP.可以O(n)特技.
3524:主席树
3527:FFT
3529:莫比乌斯反演+树状数组
3530:AC自动机+数位DP
3531:动态开点的LCT/链剖线段树
3532:退流科技.
3533:线段树维护凸包
3534:构建一个合理的矩阵然后矩阵树定理,这个矩阵的构建需要十分高超的概率姿势,建议看高大哥的题解
3543:有定理好像是这样的正方形不超过根号个还是什么来着…忘掉了.反正是结论题
3544:搞个set就好了
3545:本题不强制在线,标算为平衡树启发式合并
3551:对3545强制在线后,我们需要主席树+倍增搞一发
3555:hash
3566:树形概率DP
3571:最小乘积生成树+KM.
3572:虚树.
3573:考虑对树DFS,做一个对数的转化
3575:不靠谱的暴力做法…加上堆维护一下
3585:又是考虑离线记前驱后继然后线段树的题
3589:实际上是虚树.用链剖线段树随便打了打标记.然而标算应该是LCT做链的并吧.
3594:线段树优化DP
3603:分块高斯消元.
3605:分治FFT.
3606:平面图求域+点定位.
3607:最长路剖分一下,再轻重路剖分一下,安利Claris题解.
3613:贪心/找规律.
3616:kdtree+bitset
3622:厉害的组合数+DP.
3629:有一个什么分解定理来着…
3638:同3502
3643:爆搜
3647:hash一下,好像也是个双倍经验
3651:对ZJOI2012网络去掉权值的维护
3658:单调栈+树状数组
3659:矩阵树定理+BestTheorem
3667:MillerRabin+PollarRho
3668:按位贪心
3669:LCT
3672:点分治+斜率优化+cdq分治.
3673/3674:rope的应用.
3675:满足四边形不等式,有决策单调
3676:PAM裸题,但是我写的SAM+manacher
3680:模拟退火/多重爬山
3585:VEB树.
3687:bitset应用
3688:线段树优化DP
3709:贪心.肯定先打能回血的.
3710:构造神题.波兰人有论文.
3711:分治优化DP,分治过程中用线段树找决策点,决策点单调.
3712:树上倍增.
3713:暴力拆分.
3714:前缀和Prim.
3715:找找最大边界值,随便判定一下…
3716:最小割转最大流,然后贪心,需要一定坐标变换.
3717:高姿势的状压DP.
3718:只要能卡住就行了,树状数组.
3719:线段树套个vector扫描线扫一扫.
3721:随便贪心,考虑奇换偶偶换奇.
3722:树形DP.
3725:扫一遍,扫的时候记录出现位置,更新答案.
3726:悬线法.
3727:稍微推一推公式,然后就发现代价可以根据size什么的树形DP了.
3728:堆贪心.
3732:跟某NOIP货车运输一样.
3733:爆搜+信仰剪枝.安利潇爷(Time-Machine)题解
3735:堆搞一搞
3737:跟phi的反函数一个做法.
3743:显然可以直接树形DP.
3745:分治,前缀和,单调栈.
3754:很好的乱搞题.可以考虑看成是一堆点,然后中间有一条水平直线算代价.
3767:Python题.
3779:LCT+dfs序线段树
3791:可以比较容易的DP出来.
3802:预处理转移的DP.也可以直接手动分类讨论出来,只要你不嫌手累代码长难调.
3810:记忆化搜索
3811:这个期望和概率题好神啊…建议直接上网看题解
3812:状压DP,需要一些奇怪姿势.
3815:kdtree.
3816:空数据 Python 2B
3817:类欧题,类欧前需要很多变形.
3831:挺sb的一个DP.
3834:莫比乌斯反演.
3837:线筛处理一些东西,然后DP.
3838:看成线段树维护括号序列,然后就发现需要维护的东西特别多还不止一棵线段树.
3839:考虑从某个点开始向四个方向扩展的凸包,预处理,然后对询问用线段树扫描线一下.
3884:高姿势的数论题.
3895:dfs,过程中需要很多情况的讨论,建议看Po姐题解.
3915:矩形剖分.
3916:枚举删除的位置,Hash.
3917:考虑爆搜各种剪枝,每次范围都是之前的十分之一.
3922:搞一堆线段树分别对应不同公差,大公差暴力,小的线段树.
3926:trie上SAM扩展裸题.因为度数少,所以暴力合并.
3928:区间DP一下.
3944:杜教筛裸题.
3950:同3607.
3984:按时间分治,维护删除时间最大的基.
3990:操作序列的顺序并不影响答案,根据这个性质所以搜.
3991:虚树.
3993:二分费用最大流判定.
3994:比较厉害的莫比乌斯反演,需要一个性质.安利高大哥题解.
3995:线段树维护两排点,分类讨论.
3998:SAM的应用.
4001:找规律.实际上要靠生成函数来推…
4010:拓扑.
4020:手写编译器.
4025:LCT,或者cdq分治.
4027:贪心.
4029:模拟.
4031:矩阵树定理.
4032:前两问直接DP,后两问SAM上DP.
4033:看似n3,实际上n2的树DP.
4034:链剖,
4036:子集和变换.
4043:同3802.
4048:同3928.
4052:发现gcd最多有log个,单调栈一下.
4057:状压DP.
4059:奇怪的暴力.
4062:同3658.
4063:智障啊…
4066:卡掉离线算法差评不已.kdtree
4068:维护套着堆的线段树就行了,每次考虑用后来的任务替换一下前面的任务.
4084:Hash
4085:线段树维护矩乘.据说考场卡常?矩阵可以从33优化到22.
4086:组合数容斥.
4088:大模拟.
4106:WF签到题.
4127:数一直加的,已经没有负数的就不用管了,其他的可以暴力下放.
4128:矩阵BSGS,矩阵求逆或者不求逆的BSGS.
4130:kdtree.上面写过这个题了…
4140:因为强制在线了,所以要二进制分组
4143:乱搞,暴力,没技术含量.
4144:最短路+最小生成树.
4145:状压DP.
4146:写个计数器.sb题
4147:又一个根据很多情况来讨论的博弈.看Claris题解把
4148:构造.算基础构造题了.
4149:考虑单调栈搞一搞.
4151:一个非常厉害的.最短路?安利Claris题解
4152:把点排个序,构个图,最短路.
4154:可以kdtree,要是不只是子树的话,点分就好了.
4160:这题好神啊.安利Claris题解.
4180:构建出SAM,然后可以矩乘
4184:按时间分治线段树维护一下线性基
4194:k做一下前缀和就可以看成是凸壳,然后二分一下斜率什么的.
4195:并查集
4196:链剖
4198:Huffman树+贪心
4199:SAM Parent树上DP
4209:把PA的Bazarek用主席树来做动态的
4212:同3483,但是卡trie转移边内存.
4216:分块,也卡内存.
4229:同PA2011HardChoice
4236:随便统计一下三个字母数目更新下答案就行了.
4245:按位贪心
4247:背包变形
4250,4251前面都出现过了
4253:把AHOI那个密码箱找质因子的过程来弄成PollardRho
4260:trie正着一遍倒着一遍DP,但是我写的可持久化trie,差点T飞
4262:考虑询问离线,然后用线段树搞一搞,安利Claris题解.
4263:某TCSRM题改编,结论题,贪心一下.
4264:边集Hash.
4266:同 一个动态树好题
4269:线性基
4288:跟Baltic2014sequence一样
4289:转一下建图,差分建图,然后最短路
4291:跟Bazarek一样
4292:按位暴力
4293:大小关系是始终不变的,所以排序后可以在线段树上二分.
4294:斐波那契数列模10^m有循环节,利用这个,然后搜
4296:好像是考虑贪心的删?忘了…
4297:神题.安利Claris题解.
4298:比较厉害的边集Hash.
4299:主席树.可以发现那个东西的一个性质.这个性质如果说出来就没意思了…
4300:builtin大法好啊…
4305:组合+容斥
4310:二分+后缀数组判定/hash判定
4311:按时间分治的线段树,答案在凸壳三分
4312:大型分类讨论
4316:仙人掌DP
4317:同2051
4318:同Easy那题
4319:简单的构造
4320:小范围记录答案,大范围暴力 的那种题目
4327:SAM直接跑
4337:树Hash
4347:比较厉害的DP.安利Claris题解.
4352:又是个双倍经验…同 A Huge Tower
4358:考虑kdtree,序列[L,R]当成(L,R)这样子
4364:线段树乱搞…乱更新一下
4367:搞出暴力DP之后,满足四边形不等式,所以决策单调,然后分治优化,主席树找决策
4373:对区间是否符合条件有一个有关gcd的判定,然后线段树就行了.也可以Hash区间和,区间平方和,立方和.
4378:特技差分然后树状数组.
4380:区间DP.
4401:枚举约数.
4403:组合数学.
4404:按位搜.
4407:莫比乌斯反演
4408:同FRBSUM
4414:利用一点斐波那契数列的性质做,可以找规律.
4415:线段树模拟
4418:线段树.
4419:暴力
4421:智障…
4423:考虑对偶图中两点连通性与原图中两点连通性关系,然后并查集维护对偶图的连通性.
4424:nlogn可以差分树剖或者LCT,O(n)就利用一些特技乱搞一下.
4425:搞个堆
4426:满足四边形不等式,分治优化下DP
4427:计算几何+二分图判定
4428:一点特殊的记忆化搜索姿势然后杜教筛
4429:二分图最大匹配
4430:树状数组找一下逆序对什么的
4432:链表大模拟
4434:坐标范围很小,考虑分成一小段一小段然后做
4435:割流转化,然后最小割树
4437:BFS预处理,然后对每个询问三分
4438:忘掉了QAQ
4439:最小割
4444:DP了一下.好像是n倍经验
4452:离线,并查集
4453:高端的姿势!请单独看我题解
4454:O(1)gcd黑科技
4455:一点状压
4456:分治+Dij
4458:超级钢琴上树
4465:第二类strling数变形
4471:矩乘+贪心模拟
4472:树形DP一下
4475:找规律
4488:同cerc2013 Magical Gcd
4490:同4471
4500:差分约束
4503:FFT
4505:考虑只找那个字符串的一半,暴力枚举星号状态,然后匹配
4513:数位DP
4514:费用流一直跑,跑到变负数
4515:李超线段树
4516:SAM裸题
4517:直接错排,但是建议写容斥
4518:斜率优化,实际上也可以直接四边形不等式然后分治
4519:GHtree
4520:kdtree,姿势同jzpfar
4521:数位DP一下
4522:按他的要求做就行了…写Pollardrho,然后扩欧什么的…
4523:可持久化trie,时刻维护单调栈匹配的最大长度
4524:打表+堆然后搜的…
4527:这题好神…但是也属于那种单调栈+线段树搞一搞的题目.安利Claris题解
4538:链剖线段树+kdtree
4540:同4262
4543:提供nlogn 点分治 O(n) 利用启发式思想的树形DP
4544:打表观察找到一个积性函数.
4545:SAM强行上trie…实际上还是2555
4548:同4062
4551:并查集
4552:二分答案,线段树
4553:发现成立条件跟a[i],minb[i],maxb[i]有关.实际上是个三维偏序,可以kdtree可以cdq分治.
4554:拆点,二分图最大匹配
4556:SAM+dfs序+主席树
4557:树形DP一下
4558:容斥.需要很多细节讨论
4562:拓扑
4263:直接上错排
4565:状压DP.
4566:建两个SAM,考虑下合并代价什么的就行了
4568:点分治/倍增+线性基(Claris的点分治模板就是快)
4569:ST表+并查集
4598:可以考虑nlogn的点分治,这是doc老师给的标算,同时还有一种O(n)的做法.基于以前的暴力LCA的DP,考虑使用上启发式思想,可以做出一个漂亮的O(n)DP,基本同 4543Hotel加强版 这个题一样.
4599:首先可以看出回文串的贡献都是可以单独考虑的,然后其他的串可以考虑行列拆点最小割.具体建图已忘.
4600:考虑按C分类,然后状压DP.
4601:比较重要的两个性质:1.路径只有两种可能,分别是两种绕法,因为我没法贴图片,所以留给大家自行思考.想到这两种绕法之后,还有一个性质,就是选出一行/列,考虑这一行/列的插头状况,发现只有一个插头是非空的(当然这并不意味着要让你写一个插头DP,只是这个性质是比较有用的.
有了这两个性质就可以独立考虑做法了.
4602:带权并查集,或者直接dfs(因为无向图DFS树只有返祖边没有横向边).为了解决分数特别大的问题,考虑记录质因子或者取log(会被卡精度).
4603:正四面体剖分,然后搞一搞.

BZOJ 刷题计划 水题练手 巨水无比(4) 1214 3816 模拟/枚举/暴力(15) 4063傻子模拟; 1968小学生暴力; 1218前缀和暴力; 3856读英文; 4106直接算; 1800暴力判断; 2208暴力判断(要会邻接表); 1028枚举; 1789&amp;amp;amp;1830高能暴力; 2241暴力; 2120神奇的暴力; 4145子集暴力; 4029模拟处理; 1086DFS树; 1224暴力;... 阅读详情

相关推荐

bzoj测试数据118题数据

八中OJ,又简作BZOJ,以原题巨多而著称,该数据为BZOJ上的1000-1109和1130-1139的测试数据节点,没有题目,有需要题目的可以到https://hydro.ac/d/bzoj/p网站查找对应的题目。

POI 2012 OKR - A Horrible Poem 题解

题目传送门 题目大意: 有一个长度为nnn的字符串,每次询问一个字串的最短循环节。 最最暴力的做法:枚举长度lenlenlen,每次将该长度的字串与原串暴力匹配一遍。 …… 然而一次询问都会超时。。 于是! 开始优化! 1. 显然lenlenlen一定是nnn的因数,于是枚举len的时候只需要枚举n的因数即可 2. 匹配可以用哈希来搞,但是如果将相邻的两节依次匹配的话还是很慢,最坏时间复杂度为O(...

a_forever_dream的博客 555

深入解析Incapsula reese84的生成机制与绕过策略

本文深入解析了Incapsula reese84的生成机制与绕过策略。reese84是一种基于客户端JavaScript挑战的Web安全防护,通过动态算法收集浏览器指纹并生成令牌Cookie。文章详细拆解了其两步验证流程,并提供了使用无头浏览器、逆向JS模拟请求以及Token维护等实战绕过方法,帮助开发者和安全研究人员应对自动化访问拦截。

weixin_29256771的博客 443

A Horrible Poem (字符串hash+数论)

# 10038. 「一本通 2.1 练习 4」A Horrible Poem 【题目描述】 给出一个由小写英文字母组成的字符串 $S$,再给出 $q$ 个询问,要求回答 $S$ 某个子串的最短循环节。 如果字符串 $B$ 是字符串 $A$ 的循环节,那么 $A$ 可以由 $B$ 重复若干次得到。 【算法】 -首先对于长度为 $len$ 的子串,循环节长度为 $x$ 的充要条件:$[1,l...

924

PP-OCRv6 ONNX部署的官方和手搓方案

PP-OCRv6 基于全新设计的 PPLCNetV4 统一骨干网络,提供 tiny、small、medium 三档模型,分别面向端侧/IoT、移动端/桌面端、服务端场景。在内部多场景综合评估集上,PP-OCRv6_medium 相比 PP-OCRv5_server 识别精度提升 5.1%、检测精度提升 4.6%,同时 GPU 推理速度提升 2.37×;以仅 34.5M 参数的规模,精度超越 Qwen3-VL-235B、GPT-5.5 等大型视觉语言模型。

懒人的技术笔记 1889

电影票购票小程序搭建(源码部署)

答:为用户提供便捷的购票方式,包括授权登录、个性化推荐、在线选座、订单管理等功能,同时在界面设计上注重用户友好性,简化用户的购票流程。答:通过展示电影院的优惠活动和票价信息,同时提供电影推荐功能,根据用户的历史购票记录和电影评分推荐个性化的电影列表,吸引用户购票。编写页面逻辑代码:使用JavaScript编写小程序页面的逻辑代码,实现电影列表的获取、电影详情的展示、座位选择的逻辑等。设计小程序界面:使用WXML和WXSS编写小程序的界面代码,实现电影列表的展示、电影详情的样式、座位选择页面的布局等。

2301_79072569的博客 2068

A Horrible Poem-字符串哈希+线性筛

A Horrible Poem-字符串哈希+线性筛 题目描述 题解 首先明确几个性质 1,循环节的长度必为该区间S[a...b]S[a...b]S[a...b]长度的约数—显而易见 2,当S[a...b−len]==S[a+len...b]S[a...b-len]==S[a+len...b]S[a...b−len]==S[a+len...b]时,S[x...y]S[x...y]S[x...y]必...

Daniel__d的博客 752

ERDAS 2022与ArcGIS共存安装教程:如何避免端口冲突(详细配置步骤)

本文提供了一份详细的ERDAS 2022与ArcGIS共存安装教程,核心在于解决两者因FlexNet许可证服务器导致的端口冲突问题。通过分步指导,包括检查现有端口占用、修改ERDAS许可证文件端口号、配置防火墙及客户端设置,确保两款专业GIS与遥感软件能在同一系统上稳定运行。

weixin_29279047的博客 253

BZOJ 600题刷题计划

还是觉得优快云比较方便啊! 自从上周南昌打铁回来后,整个人都是懵逼的状态,思考了好久得出来的打铁结论就是,做题太少了。 于是我在@hzwer的博客里找到了BZOJ 600题列表,打算开启我的BZOJ 600题刷题计划。 我也不知道我能刷多少,反正就一直刷一直刷就好了吧QAQ。 嗯,大家一起加油吧! 下面放上BZOJ 题目列表。 (PS:有的题目是权限题,很尴尬) BZOJ1601 BZOJ100...

KIKO_caoyue的博客 488

AI原生应用评测:主流大语言模型性能对比

任务适配性:是否匹配应用的核心任务(如代码生成需强逻辑推理,内容创作需强创意性);上下文能力:处理长序列(如10万+字文档)的理解与生成能力;可靠性:幻觉(Hallucination)率、事实准确性、安全合规性;性价比:API调用成本、延迟、 scalability(扩展能力)。AI原生应用的核心是LLM与应用场景的深度协同。

架构师的AI之路,分享AI应用开发架构的学习与实践。 506

【GameFramework框架内置模块】6、实体(Entity)

实体Entity就是一个实体的基本单元,类似于Unity的GameObject对象本体,然后这个本体上面附加其他各种各样组件,才能实现各种各样的功能。一般需要在游戏运行时动态加载的游戏对象,比如怪物、武器、子弹、特效,都需要给这个物体挂载一个实体Entity,这样的话就可以方便的对实例出来的对象进行管理。下面就来看一下如何使用吧。

优快云博客专家,Unity3D高级软件工程师,《Unity 3D从入门到实战》作者。 3137

【BZOJ3781、2038】莫队算法2水题

【BZOJ3781】小B的询问 题意:有一个序列,包含N个1~K之间的整数。他一共有M个询问,每个询问给定一个区间[L..R],求Sigma(c(i)^2)的值,其中i的值从1到K,其中c(i)表示数字i在[L..R]中的重复次数 题解:初学莫队算法,差不多明白了用莫队的情况,对于这种离线的,区间长度+1时可O(1)修改答案的题,运用莫队算法是最水的 将n分成sqrt(n)块,将询...

aodanchui1057的博客 141

云计算 | 期末梳理(上)

2024云计算回忆版 && 复盘向梳理

知识库搭建ing 2231

BZOJ刷题记录

BZOJ刷题记录 转自http://lbn187.is-programmer.com/2015/5/16/bzoj.93165.html 学习一天可做 普及组难度 提高组难度弱省省选(NOI)难度 学习一天可做 详见https://blog.youkuaiyun.com/mrcrack/article/details/90228821 普及组难度 详见https://blog.csdn.n...

mrcrack的博客 1567

Agent 智能体学习指南:从入门到求职的完整路线

AI Agent 不是更长的 prompt,而是一类系统设计——模型在受控环境里观察状态、选择动作、调用工具、接收反馈。本文系统梳理 Agent 的 5 个核心概念、7 个关键模块(Goal/State/Context/Tools/Loop/Guardrails/Eval)、三条学习路线(工程落地/研究算法/求职作品)、框架选型策略(LangGraph/OpenAI Agents SDK/Pydantic AI 等场景推荐),以及可执行的 7 天最小项目计划(从概念到简历 bullet)。

program哲学 229

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

[bzoj5331][莫队算法]原题识别

Description 传送门 题解 肝了一上午终于肝出来了实在是感天动地啊… 感觉这种题考场上还是只能写个60分跑路了… 看一看这个第一问,显然可以无脑树上莫队搞过去 于是你就有subtask1subtask1subtask1的30pts30pts30pts了 那我们考虑这个第二问怎么做 先把问题放到序列上 那莫队的时候,我们只需要维护最左边这个点的答案和最右边这个点的答案 什么答案? 就...

Rose_max的博客 341

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

BZOJ 2508 简单题 数学算法

题目大意:维护一个平面,支持三种操作: 0.加入一条直线(给的是两点式) 1.删除一条直线 2.询问到所有直线距离平方和最小的点 题解见 http://blog.sina.com.cn/s/blog_ab8386bc0101i1nj.html 我只是贴代码供参考的- - 注意我的abcdef和题解设的不一样- - 这简单题WA了两页- - #include #include #

世界 1831

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

【BZOJ5090】组题 分数规划

【BZOJ5090】组题 Description 著名出题人小Q的备忘录上共有n道可以出的题目,按照顺序依次编号为1到n,其中第i道题目的难度系数被小Q估计为a_i,难度系数越高,题目越难,负数表示这道题目非常简单。小Q现在要出一套难题,他决定从备忘录中选取编号连续的若干道题目,使得平均难度系数最高。当然,小Q不能做得太过分,一套题目必须至少包含k道题目,因此他不能通过直接选取难...

aodanchui1057的博客 207

BZOJ水题大乱斗2

发布于 2016年10月30日,作者:nike0good[upd 2016.9.29] 今天好无聊不如来刷排位[upd 2016.10.22] 干脆在vjudge上屯着吧[upd 2016.10.23] 周末10题斩~[upd 2016.10.28] bc89 fst了B,可怜我的RATING[upd 2016.10.29] 19点做完!撒花[upd 2026.4.19] blog重构完成,解决了我的wordpressblog如何格式不变搬运到这里的历史遗留问题!ai真好用。

nike0good |Oier&ACMer | 熟能生巧 418

【BZOJ2957】楼房重建 分块水题

题解: 分块水题。 不懂看代码: #include #include #include #include #include #define N 101000 #define P 2050 #define eps 1e-10 #define max(a,b) ((a)>(b)?(a):(b)) using namespace std; int n,m; double h[N]; in

辗转山河弋流歌 1724

BZOJ刷题列表【转载于hzwer】

沿着黄学长的步伐~~ 红色为已刷,黑色为未刷,看我多久能搞完吧。。。 Update on 7.26 :之前咕了好久。。。(足见博主的flag是多么emmm......)这几天开始会抽时间刷的,每天几道就行了。 BZOJ1601 BZOJ1003 BZOJ1002 BZOJ1192 BZOJ1303 BZOJ1270 BZOJ3039 BZOJ1191 BZOJ1059 BZOJ1202 BZ...

weixin_30954607的博客 213

【BZOJ2229】【ZJOI2011】最小割 {没有错,这道题的算法跟题帽是一样的!!!}

题解:分治求最小割。 【l……r】里任意找两个作为s、t(不妨把s设为l位置上的点,t设为r位置上的点)求最小割,两层for循环枚举修改map[i][j]即两点间最小割值。 然后一部分属于S集,一部分属于T集,分治【l,L】,【R,r】,每次求完最小割值都全局进行修改。 最后每次询问暴力做就好了,无需任何优化即可AC。 代码: #include #include

辗转山河弋流歌 1955

刷题ing

RT 要学习的 专克bzoj权限题 转载于:https://www.cnblogs.com/lcezych/p/10764093.html

weixin_30544657的博客 84
上一篇: POJ题目分类
下一篇: dp复习---之01背包(第一章)
Modestr-E·X·L
博客等级 码龄7年 5粉丝 20原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值