05 2019 档案
摘要:#include <stdio.h>char map[50][51]; //地图上限50*50 int sign[50][50]; //标记 int next[4][2]={{0,1},{1,0},{0,-1},{-1,0}};int n,m; //实际地图行数、列数 int endy,endx;
阅读全文
摘要:https://segmentfault.com/a/1190000008877595?utm_source=tag-newest Trie 树是一种以信息换时间的数据结构,其查询的复杂度为O(m) Trie 的单数组实现能够达到最佳的性能,但是其空间利用率极低,是典型的以空间换时间的实现 Trie
阅读全文
摘要:从头到尾彻底理解KMP:https://blog.csdn.net/v_july_v/article/details/7041827
阅读全文
摘要:题目链接:https://cn.vjudge.net/problem/UVA-10791 题目大意:输入整数n,求至少两个正整数,使得他们的最小公倍数为n,且这些整数的和最小,输出最小的和。 题意分析:求至少两个正整数,使得他们的最小公倍数为n,我们使用到唯一分解定律。n=p1^t1+p2^t2+.
阅读全文
摘要:题目思路: 这里面的一个蚂蚁在碰撞而掉头的情形,最后被看做是“对穿而过”,这种“转换思想”是非常厉害滴。。要是我有一天也有这种技能就好了。 所以在处理复杂问题上的时候,如果直接去做很复杂、很麻烦,那就应该想办法变通,比如像这道题目,我们寻找共同点, 关键在于理解存在的映射关系。 于是发现,他们的方向
阅读全文
摘要:1.题意描述 给定边长为1,2,3,····n的n条边,现在要在里面任意选取三条边构成三角形,我们需要求一共可以构成多少个三角形? 2.题目分析 首先我们分析数据大小问题,由于数据最大可以达到10^6。所以我们如果直接枚举时间复杂度可以达到O(n^3),那么我们可以肯定的说这个时间复杂度肯定是不能承
阅读全文
摘要:1. i从1到n-1的 i*(i-1)的和=n*(n-1)*(2*n-4)/3 sum =∑i(i-1)=∑i^2-∑i 这里是1到n-1 =n*(n-1)*(2*n-1)/6 - n*(n-1)/2 =n*(n-1)*(2*n-4)/3 2.∑i^2 ==n*(n+1)*(2*n+1)/6 这里是
阅读全文
摘要:思维:复杂变简单,分情况讨论,画图讨论。 题目链接:https://cn.vjudge.net/problem/UVA-11538 题目大意::给出放两攻击皇后的放置方法:同行、同列、同对角线,让求n*m棋盘里面放两皇后的情况总数 题目思路:Num=Csae(两皇后同行放法)+Csae(两皇后同列放
阅读全文
摘要:题目大意:在一个周长为10000的园上等距分布着n个雕塑。现在又有m个雕塑加入,希望所有 m+n个雕塑在圆周上均匀分布。这就需要移动其中一些原有的雕塑。要求n个雕塑移动的总距离尽量少(直接码《训练指南》上的翻译) 题目思路:我们可以知道,开始有n个等距分布的雕塑,我们可以知道它们的位置一定是固定的(
阅读全文
摘要:题目链接:https://cn.vjudge.net/problem/UVA-11300 题目大意:圆桌旁坐着n个人,每人有一定数量的金币,金币总数能被n整除。每个人可以给他左右相邻的人一些金币,最终使得每个人的金币数目相等。你的任务是求出被转手的金币,n=4,且4个人的金币数量分别为1,2,5,4
阅读全文
摘要:题目链接:https://cn.vjudge.net/problem/UVA-1363 题意:输入正整数n和k(范围均为1e9),求∑(k mod i),i从1~n。 题目思路:直接暴力for循环求解必然超时,所以我们需要找找规律~~~ 之后我们写几组数据之后可以发现当k/i的商相同的时候他们的余数
阅读全文
摘要:1.欧几里得定理 同余定理的公式:(a+b)%mod=(a%mod+b%mod)%mod 同余定理的公式:(a+b)%mod=(a%mod+b%mod)%mod (a*b)%mod=(a%mod*b%mod)%mod 扩展欧几里得也有自己的一个公式:a*x+b*y=gcd(a,b) 2.扩展欧几里得
阅读全文
摘要:简单列了一点 1.1 基本数据结构 1. 数组 2. 链表,双向链表 3. 队列,单调队列,双端队列 4. 栈,单调栈 1.2 中级数据结构 1. 堆 2. 并查集与带权并查集 3. hash 表 自然溢出 双hash 1.3 高级数据结构 1. 树状数组 2. 线段树,线段树合并 3. 平衡树 T
阅读全文
摘要:题目链接:https://cn.vjudge.net/problem/HDU-6287 题目大意:每个问题给出三个正整数l,r,dl,r,d,小Q需要通过口算快速判断al×al+1×...×ar−1×aral×al+1×...×ar−1×ar是不是d的倍数。 题目思路:如果暴力求解(al+...+a
阅读全文
摘要:这类专题就是总结一些当时比较难懂的题目。 第一题:https://blog.csdn.net/xiamusansan/article/details/90174972
阅读全文
摘要:多项式除法不太一样,和平时的数除法不同。 第一题:poj 1060 题目介绍:给你三个多项式,分别为a,b,c,求(a*b)%c,其中还有一些特定的规则,比较难懂!!! 解题链接:https://blog.csdn.net/xiamusansan/article/details/90175793 1
阅读全文
摘要:https://blog.csdn.net/xiao_k666/article/details/79559926
阅读全文
摘要:HDU - 5178 题意:输入数组a和k,求有多少对a,b,(a<b) 使得|x[b]−x[a]|≤k? 思路:1、这道题最重要的就是要解决超时这个问题,否则按暴力肯定是超时的。 2、解决超时,这里有种方法。 先将这个数组从小到大排序,然后i从0开始,tmp从0开始判断,如果值小于等于k的话,tm
阅读全文