知识点笔记
婳儿
这个作者很懒,什么都没留下…
展开
-
数据结构KMP算法中课本上的next数组和nextval数组求解方法
next数组的求解方法是:第一位的next值为0,第二位的next值为1,后面求解每一位的next值时,根据前一位进行比较。首先将前一位与其next值对应的内容进行比较,如果相等,则该位的next值就是前一位的next值加上1;如果不等,向前继续寻找next值对应的内容来与前一位进行比较,直到找到(某个位上内容的)(next值对应的内容)与前一位相等为止,则(这个位对应的值)加上1即为需求的nex...原创 2018-10-14 20:40:34 · 6090 阅读 · 1 评论 -
如何产生随机数
#include <stdio.h>#include <stdlib.h>#include <time.h>int main(){ int x=0,i; srand((unsigned int)time(NULL)); for(i=0;i<10;i++) { x=rand()%100; ...原创 2018-06-20 19:27:03 · 229 阅读 · 0 评论 -
hdu1008-Elevator电梯,水题,要正确理解题意
ElevatorTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 82776 Accepted Submission(s): 45397Problem DescriptionThe highest building in our cit...原创 2018-06-05 20:54:14 · 361 阅读 · 0 评论 -
实例应用-scanf不接收空格和回车,gets()接收空格,不接收回车
K - The Marshtomp has seen it all before(然而沼泽鱼早就看穿了一切)fjxmlhx不喜欢网上的 marshtomps 。所以他决定把所有的 “marshtomp”(名字不区分大小写) 改为 “fjxmlhx;Input输入包含多行,每行字符串不超过200的长度,一个单词不会一半出现在上一行,剩下的在下一行。直到文件结束(EOF)Output输出 替换之后的字...原创 2018-06-04 16:25:39 · 3035 阅读 · 0 评论 -
vjudge HPU专题训练(-1)GCD&&素筛&&快速幂M 人见人爱A^B
求A^B的最后三位数表示的整数。 说明:A^B的含义是“A的B次方” Input输入数据包含多个测试实例,每个实例占一行,由两个正整数A和B组成(1<=A,B<=10000),如果A=0, B=0,则表示输入数据的结束,不做处理。Output对于每个测试实例,请输出A^B的最后三位表示的整数,每个输出占一行。 Sample Input2 312 66789 100000 0Sam...原创 2018-05-16 20:27:09 · 189 阅读 · 0 评论 -
小知识点:抛物线的顶点式方程
顶点式:y=a(x-h)²+k(a≠0,a、h、k为常数),顶点坐标:(h,k)。。。原创 2018-06-02 17:23:25 · 10601 阅读 · 0 评论 -
memset函数(初始化)
memset 免费编辑 添加义项名B 添加义项 ?所属类别 :函数memset是计算机中C/C++语言函数。将s所指向的某一块内存中的后n个 字节的内容全部设置为ch指定的ASCII值, 第一个值为指定的内存地址,块的大小由第三个参数指定,这个函数通常为新申请的内存做初始化工作, 其返回值为s。基本信息中文名称memset函数外文名称memset别称初始化函数表达式memset(void *s,i...转载 2018-05-08 19:02:52 · 2501 阅读 · 0 评论 -
hdu4548美素数(打表法,以及判断素数与否的简单方法,这一篇要看看)
美素数Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others)Total Submission(s): 8850 Accepted Submission(s): 3027Problem Description 小明对数的研究比较热爱,一谈到数,脑子里就涌现出好多数的问题,今天,小明...原创 2018-05-13 14:31:51 · 473 阅读 · 1 评论 -
NYOJ264国王的魔镜(还是看看吧,小学生的题已经这么难了吗。。。)
最优代码写的非常简洁,非常好,用了一个字符串比较函数strcmp,你写的非常复杂,你的解法不能包含每种情况,所有很多细节和特殊情况需要注意,就会把程序复杂化。。。和最优代码显然不是一个水平上的。。。还是好好看看吧介绍:strcmp函数C/C++函数,比较两个字符串设这两个字符串为str1,str2,若str1==str2,则返回零;若str1<str2,则返回负数;若str1>str2...原创 2018-05-06 16:08:11 · 659 阅读 · 1 评论 -
还是那个判断素数的方法,不过有个节省时间的细节一定要注意
int sushu(int a){ int i,t=1; for(i=2;i<=sqrt(a);i++) { if(a%i==0) { t=0; return 0; break; } } return 1;}判断a是不是素数,要注...原创 2018-05-11 20:59:07 · 221 阅读 · 0 评论 -
abs绝对值函数的头文件(还没解决)
#include<stdlib.h>#include <math.h>不知道到底在哪种情况下用哪个,反正都写上去就对了。。。原创 2018-05-04 21:58:04 · 5683 阅读 · 2 评论 -
NYOJ733万圣节派对
注意%06代表着表示在输出一个小于6位的数值时,在前面补0使其总宽度为6.万圣节派对时间限制:1000 ms | 内存限制:65535 KB难度:1描述万圣节有一个Party,XadillaX显然也要去凑热闹了。因为去凑热闹的人数非常庞大,几十W的数量级吧,自然要进场就需要有门票了。很幸运的,XadillaX竟然拿到了一张真·门票!这真·门票的排列规则有些奇怪:门票号是由0~6组成的六位数(0...原创 2018-05-04 21:44:31 · 200 阅读 · 0 评论 -
无主之地1(虽然比较简单,但还是可以学到些新方法新东西)
是自己写出来的,之所以写博客是有一些以前不会的要求可以用新方法实现无主之地1时间限制:1000 ms | 内存限制:65535 KB难度:0描述子晓最近在玩无主之地1,他对这个游戏的评价不错,结合了FPS与RPG元素,可玩度很高。不过,他发现了一代的任务系统做的不好,任务系统并没有帮他统计清楚哪个区域有多少任务,而且,给任务的时候呢,也比较散乱。比如,在1区域的一个任务点,你领到了4个任务;2...原创 2018-05-04 20:28:31 · 1207 阅读 · 0 评论 -
scanf和空白字符
scanf函数族在用%c接受输入时要接收空格和回车。%s时接受空格。scanf在不同的格式控制字符下对空白字符的接收情况%d,正常对待,不接收空格和回车,将其看作结束标志%c,接收空格,不接收回车,将其看作结束标志%s,既不接收空格,也不接收回车,将其看作结束标志不完全准确(实际上就不准确,我遇到的一个程序中%c也接收回车,并不将其看作结束标志),这只是非常片面的理解,实际上比这深得多,需要时可查...原创 2018-05-04 19:39:11 · 1497 阅读 · 0 评论 -
hdu1003Max Sum
Max SumTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 283296 Accepted Submission(s): 67285Problem DescriptionGiven a sequence a[1],a[2],a[3]...原创 2018-05-10 22:30:54 · 166 阅读 · 0 评论 -
hdu1013Digital Roots
Digital RootsTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 88565 Accepted Submission(s): 27601Problem DescriptionThe digital root of a posi...原创 2018-05-10 22:11:24 · 104 阅读 · 0 评论 -
给出三点的坐标,求三角形面积(法一:海伦公式,法二:向量法(。。。还没搞懂))
三角形面积时间限制:3000 ms | 内存限制:65535 KB难度:2描述给你三个点,表示一个三角形的三个顶点,现你的任务是求出该三角形的面积输入每行是一组测试数据,有6个整数x1,y1,x2,y2,x3,y3分别表示三个点的横纵坐标。(坐标值都在0到10000之间)输入0 0 0 0 0 0表示输入结束测试数据不超过10000组输出输出这三个点所代表的...原创 2018-06-20 21:37:46 · 14617 阅读 · 2 评论 -
贪心算法的一些例子(包括01背包问题)(并不懂,只是保留)
例题分析[0-1背包问题]有一个背包,背包容量是M=150。有7个物品,物品不可以分割成任意大小。要求尽可能让装入背包中的物品总价值最大,但不能超过总容量。物品 A B C D E F G重量 35 30 60 50 40 10 25价值 10 40 30 50 35 40 30分析:目标函数:∑pi最大约束条件是装入的物品总重量不超过背包容量:∑wi<=M(M=150)⑴根据贪心的策略,每...原创 2018-06-02 16:11:16 · 7359 阅读 · 0 评论 -
产生冠军
D - 产生冠军题目链接https://vjudge.net/contest/244053#problem/D有一群人,打乒乓球比赛,两两捉对撕杀,每两个人之间最多打一场比赛。 球赛的规则如下: 如果A打败了B,B又打败了C,而A与C之间没有进行过比赛,那么就认定,A一定能打败C。 如果A打败了B,B又打败了C,而且,C又打败了A,那么A、B、C三者都不可能成为冠军。 根据这个规则...转载 2018-08-14 16:33:19 · 382 阅读 · 0 评论 -
拓扑排序
一、什么是拓扑排序在图论中,拓扑排序(Topological Sorting)是一个有向无环图(DAG, Directed Acyclic Graph)的所有顶点的线性序列。且该序列必须满足下面两个条件:每个顶点出现且只出现一次。 若存在一条从顶点 A 到顶点 B 的路径,那么在序列中顶点 A 出现在顶点 B 的前面。有向无环图(DAG)才有拓扑排序,非DAG图没有拓扑排序一说。例...转载 2018-08-14 16:33:04 · 148 阅读 · 0 评论 -
点积&&叉积
待查原创 2018-08-14 16:30:55 · 146 阅读 · 0 评论 -
三角形重心
重心:三条中线交点;设三角形重心为O,BC边中点为D,则有AO=2OD。三角形重心是三点坐标的平均值原创 2018-08-14 16:30:41 · 3222 阅读 · 0 评论 -
计算几何-17级暑期集训(直线分割平面&&折线分割平面)
I - 折线分割平面 https://cn.vjudge.net/contest/241309#problem/I我们看到过很多直线分割平面的题目,今天的这个题目稍微有些变化,我们要求的是n条折线分割平面的最大数目。比如,一条折线可以将平面分成两部分,两条折线最多可以将平面分成7部分,具体如下所示。 Input输入数据的第一行是一个整数C,表示测试实例的个数,然后是C 行数据,每行...转载 2018-08-14 16:30:24 · 220 阅读 · 0 评论 -
计算几何-17级暑期集训(判断三个数能不能构成三角形)
G - 三角形 https://cn.vjudge.net/contest/241309#problem/G给定三条边,请你判断一下能不能组成一个三角形。Input输入数据第一行包含一个数M,接下有M行,每行一个实例,包含三个正数A,B,C。其中A,B,C <1000;Output对于每个测试实例,如果三条边长A,B,C能组成三角形的话,输出YES,否则NO。Sa...原创 2018-08-14 16:34:00 · 796 阅读 · 0 评论 -
算术基本定理+容斥-17级暑假集训
G - Ekka Dokka https://vjudge.net/contest/240973#problem/G基础题水题:Ekka and his friend Dokka decided to buy a cake. They both love cakes and that's why they want to share the cake after buying it. ...原创 2018-08-14 16:29:48 · 180 阅读 · 0 评论 -
算术基本定理+容斥-17级暑假集训(求一个数所有小于这个数并与其互质的数,用到了欧拉函数)
B - Relativeshttps://vjudge.net/contest/240973#problem/BGiven n, a positive integer, how many positive integers less than n are relatively prime to n? Two integers a and b are relatively prime if ...原创 2018-08-14 16:29:35 · 352 阅读 · 0 评论 -
ACM暑期集训 同余定理+逆元 练习题 一个大数对一个数取余
ppt内容大数取模一个大数对一个数取余,可以把大数看成各位数的权值与个位数乘积的和。比如1234 = ((1 * 10 + 2) * 10 + 3) * 10 + 4,对这个数进行取余运算就是上面基本加和乘的应用。代码实现int len = a.length();int ans = 0;for(int i = 0; i < len; i++){ans = (ans * ...原创 2018-08-14 16:29:13 · 428 阅读 · 0 评论 -
ACM暑期集训 同余定理+逆元 大数取余
表面上看这道题是问a能不能整除b,实际上还是看二者取余余数是否为0,属于大数取余的范围a的范围达到10的200次方,用 long long都已经不可以,需要用字符串,而b可以用long long题目:F - Large Division Given two integers, a and b, you should check whether a is divisible by...原创 2018-08-14 16:29:05 · 240 阅读 · 0 评论 -
扩展欧几里得求逆元模板
1. 扩展欧几里德算法是用来在已知a, b求解一组x,y,使它们满足贝祖等式: ax+by = gcd(a, b) =d(解一定存在,根据数论中的相关定理)。扩展欧几里德常用在求解模线性方程及方程组中。下面的模板即用来求一组x,y的特解2.设c是b的逆元,则有b*c≡1(mod m);推论:(a/b)%m=( a*(b的逆元))%m=(a%m * (b的逆元)%m)%m...原创 2018-08-14 16:28:38 · 2155 阅读 · 1 评论 -
ACM暑期培训第一次积分赛 G又是毕业季(代码就一行)
G 又是毕业季时间限制内存限制出题人1 Second 512 Mb 丁金峰题目描述为了把毕业晚会办得更好,老师想要挑出默契程度最大的k个人参与毕业晚会彩排。可是如何挑呢?老师列出全班同学的号数1,2,……,n,并且相信k个人的默契程度便是他们的最大公约数(这不是迷信哦)。这可难为了他,请你帮帮忙吧!PS:一个数的最大公约数即本身。输入多组输入,两个空格分开的正整数n和k。(n大于...原创 2018-07-23 17:58:08 · 140 阅读 · 0 评论 -
一些排序NYOJ8,多个量的排序,经典案例
用的是sort(s,s+m,cmp)重新定义一种新的排序一种排序时间限制:3000 ms | 内存限制:65535 KB难度:3描述现在有很多长方形,每一个长方形都有一个编号,这个编号可以重复;还知道这个长方形的宽和长,编号、长、宽都是整数;现在要求按照一下方式排序(默认排序规则都是从小到大);1.按照编号从小到大排序2.对于编号相等的长方形,按照长方形的长排序;3.如果编号和长都相同,按照长...原创 2018-06-19 21:52:30 · 170 阅读 · 0 评论 -
求1000以内n!(没看懂)hduoj1042
N!Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Others)Total Submission(s): 91321 Accepted Submission(s): 27064Problem DescriptionGiven an integer N(0 ≤ N ≤ 10000),...原创 2018-06-17 13:44:43 · 805 阅读 · 0 评论 -
2,3,5,7 hduoj1058
Humble NumbersTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 29329 Accepted Submission(s): 12843Problem DescriptionA number whose only prime...原创 2018-06-17 12:28:06 · 263 阅读 · 0 评论 -
对称排序(包含结构体,以及sort中的comp,字符串数组,以及字符串数组按长度排序等内容)
对称排序时间限制:1000 ms | 内存限制:65535 KB难度:1描述In your job at Albatross Circus Management (yes, it's run by a bunch of clowns), you have just finished writing a program whose output is a list of names in non...原创 2018-05-04 08:39:34 · 408 阅读 · 0 评论 -
hdu1018 Big Number(求n的阶乘的位数)
Big NumberTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 41789 Accepted Submission(s): 20498Problem DescriptionIn many applications very lar...原创 2018-05-09 22:06:34 · 180 阅读 · 0 评论 -
整除个数(水题)
整除个数时间限制:3000 ms | 内存限制:65535 KB难度:1描述1、2、3… …n这n(0<n<=1000000000)个数中有多少个数可以被正整数b整除。输入输入包含多组数据每组数据占一行,每行给出两个正整数n、b。输出输出每组数据相应的结果。样例输入2 15 310 4样例输出212整除个数就是n/b,n里面有多少个b,即b*1,b*2,b*3.....都...原创 2018-05-02 21:02:21 · 358 阅读 · 0 评论 -
strlen,sizeof,size,length,string
strlen只能用于****char字符数组****,不可以用于整形,也不可以用于string ,它是计算字符型数组的实际有效长度,不包括\0;sizeof()计算****数据(数组、变量、类型、结构体等****所占****空间(自然包括\0)****,用****字节数****表示;size是计算****string字符串数组****的元素个数但是看的是数组下标,即啊定义a[5],然后a.size...原创 2018-04-12 10:55:03 · 329 阅读 · 0 评论 -
数数小木块最优代码的简便解法
做出来了,但是最优代码要简便的多数数小木块时间限制:3000 ms | 内存限制:65535 KB难度:1描述在墙角堆放着一堆完全相同的正方体小木块,如下图所示: 因为木块堆得实在是太有规律了,你只要知道它的层数就可以计算所有木块的数量了。现在请你写个程序 给你任一堆木块的层数,求出这堆木块的数量.输入第一行是一个整数N(N<=10)表示测试数据的组数)接下来的n行 每行只有一个整数 ...原创 2018-04-12 09:13:11 · 2735 阅读 · 0 评论 -
同余定理
小光棍数时间限制:1000 ms | 内存限制:65535 KB难度:1描述最近Topcoder的XD遇到了一个难题,倘若一个数的三次方的后三位是111,他把这样的数称为小光棍数。他已经知道了第一个小光棍数是471,471的三次方是104487111,现在他想知道第m(m<=10000000000)个小光棍数是多少?输入有多组测试数据。第一行一个整数n,表示有n组测试数据。接下来的每行有...原创 2018-04-17 17:45:26 · 2071 阅读 · 0 评论 -
小技巧
题很简单是水题荷兰国旗问题时间限制:3000 ms | 内存限制:65535 KB难度:1描述 荷兰国旗有三横条块构成,自上到下的三条块颜色依次为红、白、蓝。现有若干由红、白、蓝三种颜色的条块序列,要将它们重新排列使所有相同颜色的条块在一起。本问题要求将所有红色的条块放最左边、所有白色的条块放中间、所有蓝色的条块放最右边。输入第1行是一个正整数n(n<100),表示有n组测试数据。接下来...原创 2018-04-16 16:12:01 · 89 阅读 · 0 评论