![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
BestCoder
Zaller
acm退休,考研ing...
无偿给同校学弟学妹们解答;
博客若有看不懂的或者不对的地方,直接私信我就行(如果我回复晚了,对不起都是我的错);
不用太客气等我回复,有问题直接私信发:)
ps: 随缘上线
展开
-
hdu 5636 Shortest Path · Floyd
题解题意:n个点,第i个点和第i+1个点之间有一条边,现在再告诉你6个点,添3条边,边权都为1,m次询问,问s与t之间的最短路因为s与t之间的最短路,要么是这两个点本身之间的距离,要么是通过这6个点,所以Floyd跑一下这6个点之间的最短路,dp找最小的那条路,dis = min(dis, abs(u - a[i]) + d[i][j] + abs(v - a[j]))#inclu...原创 2020-03-03 20:44:52 · 111 阅读 · 0 评论 -
BC #15 / hdu 5085 Counting problem · 分块+hash / 数位dp
题解版本1:分块+hash向大佬学习学习· 代码学习来源分块部分:将a分为前5位(记作头部ah),和后4位(记作尾部at),b同样划分,a=ah∗10000+ata=ah*10000+ata=ah∗10000+at,(a要先减1)b=bh∗10000+btb=bh*10000+btb=bh∗10000+bthash部分:如果 at<btat<btat<bt先暴...原创 2020-02-10 23:29:46 · 117 阅读 · 0 评论 -
BC #68 / hdu 5608 function · 莫比乌斯反演+杜教筛
题解数论劝退…大佬博客 · 忘了再看呗莫比乌斯函数莫比乌斯反演杜教筛原创 2020-02-09 20:44:25 · 155 阅读 · 0 评论 -
HDU 5069 Harry And Biological Teacher AC自动机 + 线段树优化
题解直接看大佬博客 建议模拟一遍,来点图,加深印象两个模式串:ACCGT 和 TTT#include <bits/stdc++.h>using namespace std;const int N=1e5+10;const int INF=0x3f3f3f3f;int n,m,k;struct Segment_Tree{ #define lson l,m...原创 2020-02-08 22:27:22 · 163 阅读 · 0 评论 -
BC #67 / hdu5601 N*M bulbs · 思维 黑白棋盘染色
题解题意:熊孩子从左上角走到右下角,随便走,要求走到右下角的同时灯全灭帖官方题解:我们发现操作数跟n+m-1同奇偶,那是不是当1的个数跟n+m-1同奇偶是就是YES呢?答案是肯定的,我们这样看:首先将棋盘黑白染色,就是若(i,j)格子,若(i+j)是奇数,那么就是黑格子,否则就是白格子。我们发现我们可以通过一种操作使得从一个格子走到斜方向的任意一个格子。这个操作很简单,我们假设一个2∗...原创 2020-02-08 19:05:37 · 542 阅读 · 0 评论 -
BC #67 / hdu 5600 N bulbs·找规律
题解题意:熊孩子从头走到尾,可以往左,也可以往右,每次经过一个位置就必须拨动开关,问当熊孩子走到最后一个位置的时候能否全部灭灯1.如果当前位置是1,可以直接经过2.如果当前位置是0,可以借助下一个位置来回走消除取反,但是会使下一个位置取反接着便是从头到尾走一遍,看看最后位置能否变1(没有下一个位置,不可能是第2种情况)#include <bits/stdc++.h>u...原创 2020-02-08 17:34:36 · 120 阅读 · 0 评论 -
BC #38 / HDU5208 Where is Bob · 数位dp
题解请务必看一下这位大佬的博客数位dp,永远的痛…看到异或,可以想到二进制那么A的做法就是每一位尽量与J不同,J的做法是每一位尽量与A相同,因为是A先选,J后选,对于A的每一个选择,J必定做出最优决策,所以答案是唯一的,所以只要让A选能选的最大就行了,进行过程中会遇到哪些选择呢?第一种:一方当前位置只能选择一种,另一方随便选,那么另一方必定会选择对自己有利的,第二种:两个人都只...原创 2020-02-07 22:48:48 · 118 阅读 · 0 评论 -
BC #37 / hdu 5204 Rikka with sequence · 思维
题解原创 2020-02-07 18:17:02 · 198 阅读 · 0 评论 -
BC #37 / hdu 5203 Rikka with wood sticks·数学
题解将可用的木棍分为x,y两段假设 x,y均有值,且x ≤\le≤ y第三段肯定是由b进行分割,分割成a,b两段,即 a+b=y则有以下不等式:1.a+b=y>xa+b=y>xa+b=y>x2.x+a>bx+a>bx+a>b3.x+b>ax+b>ax+b>a然后将 b=y-a 带入不等式,得:x+y2>a>y−x2...原创 2020-02-06 22:33:06 · 118 阅读 · 0 评论 -
BC #38 / hdu 5207 · 埃氏筛
题解1e5的数据,不可能两两gcd所以只能从因子出发,埃氏筛外层从大到小枚举每个因子内层统计每个含有该因子的数只要个数达到两个就可以直接输出了时间复杂度:n(logn)2n(logn)^2n(logn)2…?#include <bits/stdc++.h>using namespace std;const int N=1e6+10;int a[N];int...原创 2020-02-06 20:28:00 · 138 阅读 · 0 评论 -
BC #38 / hdu 5206 Four Inages Strategy
题解写的时候智障了…枚举所有的点的位置…傻了傻了正解:总共四个点,只有6条边,sort一下,前四条相等(边),后两条相等(对角线),且要符合勾股定理如果只有四边相等,对角线相等:awsl为防精度问题,距离直接按平方计算对了,写的时候发现:这么写,是对的for (int cs = 1; cs <= T; ++cs) { if(solve()) printf("Cas...原创 2020-02-06 18:03:38 · 148 阅读 · 0 评论 -
BC #37 / hdu 5202 Rikka with string · 思维
题解题意:填补字符串,并判断是不是非回文将所有?全部替换成a,判断是否为回文串,如果是,将最后一个非中心的a改成b#include <bits/stdc++.h>using namespace std;int n,m,k;string s,t;int main(){ ios::sync_with_stdio(0); while(cin>...原创 2020-02-06 17:14:37 · 136 阅读 · 0 评论