摘要:
【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 很明显的最小生成树了。 输出最后选的那条边就好了。 【代码】 cpp include using namespace std; const int N = 300; const int M = 1e6; struct abc{ 阅读全文
摘要:
【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 【代码】 阅读全文
摘要:
【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 最后要求对于所有的i,a[i][i]=1 那么,如果第i行的第j列为1. 就说明我们可以把这个第i行换到第j行。 因为这样的话,a[j][j]就会等于1了。 转化成二分图的模型。 相当于每一行都有若干种选择,可以换到某些行。 那 阅读全文
摘要:
【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 暴力题。 bfs 直接用二进制存储状态。(把二维变成一维 然后暴力从每个位置进行搜索就好 一共就2^16种状态。 【代码】 阅读全文
摘要:
【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 用小的质数去凑那个数字。 显然比用大质数去凑划算。 因为 对于$x = p1^{q1} p2^{q2} ... pn^{qn}$ x的因子个数等于(q1+1) (q2+1).... (qn+1); 显然 你用的质数越小。 这个指 阅读全文
摘要:
【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 Tarjan算法强连通缩点 。 最后出度为0的点。 如果只有一个。 那么这个“大点”所包含的点的个数就是答案了。 【代码】 cpp / n个点,m条有向边. 把有向图G的环进行缩点; 缩完之后的图存在vector g[N]里面; 阅读全文
摘要:
【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 二维的ST表。 每个大的正方形可以由4个小的正方形组成。 然后区域内的最大值最小值。也可以由4个小的张方形部分全部覆盖到。 【代码】 cpp include define LL long long define rep1(i,a 阅读全文
摘要:
【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 思路来自hzwer.. 设xi表示第i个人往左传递了xi个糖果。 (如果小于0表示旁边的人给他了糖果。 则ans=∑|xi| 最后所有人的糖果数都变成sum/n avg 则 a1 x1+x2 = avg a2 x2+x3= av 阅读全文
摘要:
【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 这个x2,y2和圆心(x1,y1)相连。形成的直线和圆交于点(x3,y3) 则(x2,y2)和(x3,y3)的中点就是所求圆的圆心。 半径就是x2,y2到x3,y3的距离的一半。 写个向量的方法,求出x3,y3的坐标就好了。 【 阅读全文
摘要:
【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 会发现,如果把连续4个数字进行一次翻转的话。 假设这连续的4个数字的逆序数为x; 那么翻转过后,逆序数就会变成6 x; (最多6个逆序数,现在翻转了 那么这4个逆序数的变化为6 2x 显然变化值为一个偶数。 而1..l 1和r+ 阅读全文