
Algorithms
文章平均质量分 56
setoy
这个作者很懒,什么都没留下…
展开
-
STL sort/qsort 使用functor、函数指针、lambda表达式和运算符重载的速度差异
比较以下STL sort使用仿函数、函数指针和运算符重载的速度差异,顺便也和C的qsort对比一下。,若去掉该优化,C的。原创 2023-09-19 09:58:42 · 338 阅读 · 0 评论 -
Codeforces 51E Pentagon
题意https://codeforces.com/problemset/problem/51/E在无向图中统计有多少个五元环,顶点数≤700\le 700≤700算法:枚举枚举五元环的两个顶点,找到两条各自包含2条和3条的不重复边的环。u→vu \to vu→v的长度是2的路径条数如何计数呢?可以类似Folyd的传递闭包方法,枚举一个中间点xxx即可,根据乘法原理,∑ux=∑ux×∑xv...原创 2020-02-10 19:56:53 · 444 阅读 · 0 评论 -
Codeforces 52C Circular RMQ
题意https://codeforces.com/problemset/problem/52/C两种操作:inc(lf, rg, v)inc(lf, rg, v)inc(lf, rg, v) — 闭区间[lf, rg][lf, rg][lf, rg]内每个数都+v+v+vrmq(lf, rg)rmq(lf, rg)rmq(lf, rg) — 查询闭区间[lf, rg][lf, rg][l...原创 2020-02-10 17:11:55 · 252 阅读 · 0 评论 -
Codeforces 51C Three Base Stations
题意https://codeforces.com/problemset/problem/51/Cxxx水平轴上有n(≤2×105)n(\le 2 \times 10^5)n(≤2×105)个房子,建3个基站,使得每个基站的直径都是ddd最小且能覆盖所有房子。房子坐标都是整数,且≤109\le 10^9≤109,输出基站半径和三个基站的中心坐标,保留6位小数。算法一:枚举中心位置未知、直径长...原创 2020-02-10 17:00:43 · 284 阅读 · 0 评论 -
Codeforces 45G Prime Problem
题意https://codeforces.com/problemset/problem/45/G作为数论题,这个题面给出的问题情景可以打高分,所以把题目简述下有nnn个房子,编号1..n1..n1..n,现要给它们涂色,要求是:一幢房子涂一种颜色,涂同种颜色的房子编号之和应该是素数颜色种数不能太多,要尽量少不同颜色的房子不能连续在一起输入样例8输出样例1 2 2 1 1 ...原创 2020-02-06 17:47:55 · 217 阅读 · 0 评论 -
Codeforces 46D Parking Lot
题意直线停车场长度L(10≤L≤105)L(10 \le L \le 10^5)L(10≤L≤105),车长xxx,头尾还需空出b,f(1≤x≤1000,1≤b,f≤100)b,f(1\le x \le1000, 1\le b,f \le 100)b,f(1≤x≤1000,1≤b,f≤100)的距离。最多有100次操作:停车和出车操作。对于每个停车操作输出这辆车停的位置(尽量靠左的位置),对于出...原创 2020-02-06 17:08:23 · 199 阅读 · 0 评论 -
快速排序(快排)的一些细节和k-th问题
对算法竞赛而言,轴点的选取不是关键,算法的细节和程序才是重点,而在应用快排的副产品k-th元素中,这个细节尤为重要。网络上鲜有这些细节描述,谨以记之。快排的不同写法主要用两种写法:标准快排和“两头”交换写法,竞赛中以后者居多。标准写法void quick_sort(int l, int r){ int i = l, j = r, x = s[l]; while (i < j)原创 2016-10-06 18:42:35 · 2192 阅读 · 1 评论 -
OJ不完全汇总
这位同学整理的蛮全的,转载一下:http://www.cnblogs.com/yangqingli/p/4931360.html前言 本文对国内外大家常用的几十个在线测评网站做整理。每个测评网站都有一至两张图片,分别是主页和题库的截图。从图片上可以清晰地看出不同测评网站的风格,甚至是题目难度,方便大家选择适合对口味的测评网站。作者才疏学浅,无法对每个测评网站做出一句话或是更多的客观评价,只是在自己转载 2016-10-22 10:05:42 · 3368 阅读 · 0 评论 -
Python 3.5 基于ACM问题的语法笔记
据说高考又要换语言了,这次据说是有趣的Python。然而,学起来并不有趣,尤其有着Pascal般严格的语法基础的时候,很是悻悻然的样子。据说py3不兼容于py2,然后py4也将比兼容于py3,这是真的么???数据类型变量定义不需要定义变量,更不需要定义变量的类型,直接赋值就行,这点像VB和php数据类型Numbers: 1234 3.1415 3+4j原创 2016-05-17 14:33:57 · 1649 阅读 · 1 评论 -
git初识,菜鸟, 入门,备忘
安装sudo apt-get install git克隆安装好之后就能克隆别人的代码:git clone git@github.com:your_name/your_project.git克隆的位置是你命令提示符的当前目录克隆地址可以是https或者ssh的,上述代码应该是ssh,ssh和你的机器系统有关,会比较麻烦,https一般能成功。当然,要托管自己的代码,那还得折腾:创建版本库现在自己电脑上原创 2015-08-27 19:53:21 · 854 阅读 · 0 评论 -
关于 A^x = A^(x % Phi(C) + Phi(C)) (mod C) 的若干证明(指数循环节)
这个证的貌似很少,只找到这里:http://hi.baidu.com/aekdycoin/item/e493adc9a7c0870bad092fd9,留存一下。曾经看过如下一个公式:以上的公式如果第一次见到,难免有不少疑惑:为什么可以这么写?限制条件为什么是x >= Phi(C),这个公式为什么正确?今天突发奇想,在纸上YY以后得到了以下证明(个人证明,如果有问题欢转载 2014-11-04 10:50:13 · 714 阅读 · 0 评论 -
gcc/g++编译命令编译选项编译参数介绍
[介绍] gcc and g++分别是gnu的c & c++编译器 gcc/g++在执行编译工作的时候,总共需要4步 1.预处理,生成.i的文件 预处理器cpp2.将预处理后的文件不转换成汇编语言,生成文件.s 编译器egcs3.有汇编变为目标代码(机器代码)生成.o的文件 汇编器as4.连接目标代码,生成可执行程序转载 2013-05-31 09:18:03 · 1352 阅读 · 0 评论 -
php框架Codeigniter操作微软Access mdb(MS SQL Server)数据库
教学的需要,必须使用mdb数据,又不想用asp*,纯php代码编写效率太低,于是用了Codeigniter框架。实际上蛮简单的:1. *.mdb文件放在网站根目录下(即index.php目录)(确保网页能直接访问到的位置)。2. 修改application\config\database.php://$db['default']['hostname'] = 'localho原创 2012-11-29 18:29:16 · 3412 阅读 · 0 评论 -
Pascal 算法点滴
1.Pascal没有幂函数,只能通过ex来转换:xn=en*ln(x),Pascal表达式:exp(n*ln(x))同样任意底的对数:ln(x)/ln(n),如log310=ln(10)/ln(3)2.求一个整数n的位数:trunc(ln(n)/ln(10))+13.一位一位分解整数n:repeat i:= n mod 10; write(i:5); n:=n div 10until n0;原创 2008-10-26 21:07:00 · 1073 阅读 · 0 评论 -
Pascal高精度加法(附N-S流程图)
最基本的高精度的加法思路还是比较容易想到的,不过该算法要考虑的地方还是比较多的,比如:字符倒置加法运算时的进位多余数字的处理运算后数字的长度下面给出其算法N-S流程图:Pascal代码:program p1039;type intarray = array[1..251] of byte;var s1,s2:string[250]; code,len:integer; a,原创 2008-12-22 20:10:00 · 2363 阅读 · 0 评论 -
如何迅速而准确地确立递推关系
一、引言 占卜师的咒语带你来到一个虚空的象限,并准确地看到了你的未来。然而,赋予他这种能力的,其实并不是你不解其意的咒语,而是蕴涵着神秘能量的水晶球。这正如对于程序员来说,只要掌握了由现在衍化到将来的方法,同样可以随心所欲地写出一种以递推为核心的程序,完成一些在其他人看来是如此困难的事情——困难不在于程序,而在于思想。 二、一个数值型的递推模型原创 2009-08-04 21:13:00 · 915 阅读 · 0 评论 -
VB 2008 访问 SQL SERVER 2008返回DataTable的一般方法~~~
做个小结:1. 定义打开链接:Dim cnn as SqlConnection = New SqlConnection(CONNECTIONSTRING)cnn.open 2. 定义读取适配器Dim da as New SqlDataAdapter()da.SelectCommand = new SqlCommand("SELECT * FROM TAB", cn原创 2010-03-10 15:52:00 · 893 阅读 · 0 评论 -
SQL Sever 联合查询并删除的例子
<br />delete from tab_1 where column in ( select tab_1.column from tab_1 left join tab_2 on tab_1.column=tab_2.column where tab2.other_col like '%a%' ) <br />将tab1中的数据删除,这些数据符合tab2中other_col的条件原创 2010-06-03 10:00:00 · 1592 阅读 · 0 评论 -
三十分钟掌握STL
这是本小人书。原名是《using stl》,不知道是谁写的。不过我倒觉得很有趣,所以化了两个晚上把它翻译出来。我没有对翻译出来的内容校验过。如果你没法在三十分钟内觉得有所收获,那么赶紧扔了它。文中我省略了很多东西。心疼那,浪费我两个晚上。译者:karycontact:karymay@163.netSTL概述STL的一个重要特点是数据结构和算法的分离。尽管这是个简单的概念,但这种分离转载 2012-01-09 13:19:42 · 565 阅读 · 0 评论 -
通过金矿模型介绍动态规划
http://www.cnblogs.com/SDJL/archive/2008/08/22/1274312.html 对于动态规划,每个刚接触的人都需要一段时间来理解,特别是第一次接触的时候总是想不通为什么这种方法可行,这篇文章就是为了帮助大家理解动态规划,并通过讲解基本的01背包问题来引导读者如何去思考动态规划。本文力求通俗易懂,无异性,不让读者感到迷惑,引导读者去思考转载 2012-05-08 19:58:15 · 1797 阅读 · 0 评论 -
Javascript中嵌入php代码、Javascript中函数参数的默认值
一、在javascript中嵌入php代码1.可以直接写php代码2.javascript若是通过js文件包含进来的,那么js文件中也可以直接写php代码,只不过包含js文件是扩展名要改成php,如:二、javascript函数参数的默认值c语言中可以通过这样来设置默认参数:void foo(int a, int b = 1, bool c = false)原创 2012-11-29 18:10:57 · 3691 阅读 · 0 评论 -
mysql的一个联合查询列子
一个mysql的联合查询列子,很基本的,不过很实用。先看数据表。数据表class:------------------------------- id cname-------------------------------1 男装2 女皮裤3 女彩棉-------------------------------class表存放的是产品的大类名称和其序号数据表product:原创 2006-10-26 21:16:00 · 9071 阅读 · 1 评论