E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
ACM算法
背包问题
title:动态规划_背包问题date:2018-07-3020:36:18tags:
acm算法
动态规划概述背包问题就是动态规划的一个典型问题,,,个人觉得重在考查动态规划的思维,,有时需要将题目抽象出来
31415926535x
·
2018-07-31 22:00
网络流
title:网络流date:2018-07-3122:01:22tags:
acm算法
网络流概述这篇博客主要是关于网络流的一些基本的知识点以及相应的模板,,算了,,,还是先贴大佬的博客,,,暑假在补一下。
31415926535x
·
2018-07-31 22:00
动态规划_1
title:动态规划_1date:2018-07-2922:29:49tags:
acm算法
动态规划概述今天集训学的是动态规划,,,也就是dp,,,这玩意早就听说过了,,,一直感觉很难,,,听名字就有些高大上
31415926535x
·
2018-07-29 23:00
2018北大暑校
acm算法
训练课程 课程大作业 状压dp
总时间限制:1000ms内存限制:65536kB描述小明是北京大学信息科学技术学院三年级本科生。他喜欢参加各式各样的校园社团。这个学期就要结束了,每个课程大作业的截止时间也快到了,可是小明还没有开始做。每一门课程都有一个课程大作业,每个课程大作业都有截止时间。如果提交时间超过截止时间X天,那么他将会被扣掉X分。对于每个大作业,小明要花费一天或者若干天来完成。他不能同时做多个大作业,只有他完成了当前
空想昼夜
·
2018-07-29 15:18
pku_acm
最短路总结
title:最短路date:2018-07-2722:36:50tags:
acm算法
图论概论最短路主要是寻找某个有图问题从起始点到终点的最短的路,,,这是最基本的一种情况,,,由此可以变形出各种各样的其他题型
31415926535x
·
2018-07-29 14:00
2018北大暑校
acm算法
训练课程 河中跳房子 二分
总时间限制:1000ms内存限制:65536kB描述每年奶牛们都要举办各种特殊版本的跳房子比赛,包括在河里从一个岩石跳到另一个岩石。这项激动人心的活动在一条长长的笔直河道中进行,在起点和离起点L远(1≤L≤1,000,000,000)的终点处均有一个岩石。在起点和终点之间,有N(0≤N≤50,000)个岩石,每个岩石与起点的距离分别为Di(0#include#include#include#inc
空想昼夜
·
2018-07-29 11:21
pku_acm
板子总结(超长篇)
ACM算法
模板皮一下很开心原创模板1、快速幂&GCDintgcd(inta,intb){returna?
doubleguy
·
2018-07-29 08:23
ACM算法
竞赛生涯总结---ACM-ICPC墓志铭
其实去年打完ECL-FINAL就应该写这个墓志铭了的,奈何当时由于各种原因,心情不好,前途无望,加上考试周在即就一直没有写。文章目录参赛获奖经历遗产竞赛经历感想留下的遗憾ACM之外的思考参赛获奖经历时间比赛获奖大二上2016青岛区域赛Fe大二上2016EC-FinalFe大二下江苏省省赛一等奖大二下西安邀请赛Cu大二下蓝桥杯二等奖大三上2017西安区域赛Fe大三上2017南宁区域赛Cu大三上201
孤鸿子_
·
2018-05-28 12:29
ACM算法
竞赛生涯总结---ACM-ICPC墓志铭
其实去年打完ECL-FINAL就应该写这个墓志铭了的,奈何当时由于各种原因,心情不好,前途无望,加上考试周在即就一直没有写。文章目录参赛获奖经历遗产竞赛经历感想留下的遗憾ACM之外的思考参赛获奖经历时间比赛获奖大二上2016青岛区域赛Fe大二上2016EC-FinalFe大二下江苏省省赛一等奖大二下西安邀请赛Cu大二下蓝桥杯二等奖大三上2017西安区域赛Fe大三上2017南宁区域赛Cu大三上201
孤鸿子_
·
2018-05-28 12:29
转载-我对ACM初学者想说的话
[+]算法学习编程语言学习练题与竞赛总结与扩展1算法学习
ACM算法
的学习,一般看刘汝佳的系列书籍即可。
kevin聪
·
2018-01-04 21:14
算法与数据结构
对于陆*学长的报告感悟和反思
报告主题:独立思维,离群并不孤独报告主讲:2017届优秀毕业生陆*工作单位:深圳市腾讯计算机系统有限公司大学期间,担任13级
ACM算法
攻关部负责人,8次获得ACM、挑战杯、机器人数学建模等多项省级、区域赛级奖项
别止
·
2017-12-22 00:00
HD-
ACM算法
专攻系列(23)——Crixalis's Equipment
题目描述:AC源码:此次考察贪心算法,解题思路:贪心的原则是使留下的空间最大,优先选择Bi与Ai差值最大的,至于为什么?这里用只有2个设备为例,(A1,B1)与(A2,B2),假设先搬运A1,搬运的那一瞬间,实际将要占用的空间应该为A1+B2,那么为了保证留下的空间最大,则应该有A1+B2B2-B1。(n个设备可以两两做这样的比较,来达到选择的最优)#include"iostream"#inclu
forcheng
·
2017-10-07 15:00
HD-
ACM算法
专攻系列(22)——Max Sum
问题描述:AC源码:此题考察动态规划,解题思路:遍历(但有技巧),在于当前i各之和为负数时,直接选择以第i+1个为开头,在于当前i各之和为正数时,第i个可以不用作为开头(因为前i+1个之和一定大于第i+1个的值)#include"iostream"usingnamespacestd;intmain(){intt,n,start,end,sum,max,tmp;inta[100000];scanf(
forcheng
·
2017-10-07 15:00
HD-
ACM算法
专攻系列(21)——Wooden Sticks
题目描述:AC源码:此题考查贪心算法,解题思路:首先使用快速排序,以w或l按升序排序(注意相等时,应按另一值升序排序),这样就将二维变量比较,变为了一维的,排好序的一边就不需要去管了,只需要对未排序的一边直接进行贪心遍历。时间复杂度O(n^2)#include"iostream"#include"algorithm"usingnamespacestd;structStick{intl;intw;b
forcheng
·
2017-10-07 15:00
HD-
ACM算法
专攻系列(19)——Leftmost Digit
问题描述:AC源码:解题关键是,数据很大,不能强算,需要使用技巧,这里使用科学计算法,令N^N=a*10^n,取对数后变为N*log10(N)=log10(a)+n,令x=log10(a)+n又n=int(x)[取整,当然根据所给数据范围,为了避免溢出,这是使用的是longlong取整],则a=10^(x-int(x)),最后带入x=N*log10(N),对a的值取整即为最终结果。#include
forcheng
·
2017-10-07 15:00
HD-
ACM算法
专攻系列(20)——七夕节
问题描述:AC源码:/**/#include"iostream"#include"cmath"usingnamespacestd;intmain(){intt,n,sq,sum;scanf("%d",&t);for(inti=0;i1&&sq*sq==n){sum-=sq;}printf("%d\n",sum);}return0;}
forcheng
·
2017-10-07 15:00
HD-
ACM算法
专攻系列(18)——Largest prime factor
题目描述:源码:需要注意,若使用cin,cout输入输出,会超时。#include"iostream"#include"memory.h"#defineMAX1000000usingnamespacestd;intindex[MAX];intmain(){memset(index,-1,sizeof(index));index[1]=0;intsum=0;for(inti=2;i
forcheng
·
2017-10-07 15:00
HD-
ACM算法
专攻系列(16)——考试排名
问题描述:源码:主要要注意输出格式.#include"iostream"#include"iomanip"#include"algorithm"#include"string"usingnamespacestd;structPerson{stringname;intcount;intscore;};boolcmp(Persona,Personb){if(a.count>b.count){retur
forcheng
·
2017-10-07 15:00
HD-
ACM算法
专攻系列(17)——find your present (2)
题目描述:源码:#include"iostream"#include"string"usingnamespacestd;boolIsFirstHalf(string*strs,intn,stringstr){intcount=0;for(inti=0;i=(n/2+n%2);}intmain(){intn,count[100],counts[5];string**strs;strs=newstri
forcheng
·
2017-10-07 15:00
HD-
ACM算法
专攻系列(14)——find your present (2)
问题描述:源码:#include"iostream"#include"algorithm"usingnamespacestd;boolcmp(inta,intb){returna1){//if(p[0]!=p[1])//{//result=p[0];//}for(inti=1;i
forcheng
·
2017-10-07 15:00
HD-
ACM算法
专攻系列(15)——Quoit Design
问题描述:源码:经典问题——最近邻问题,标准解法#include"iostream"#include"algorithm"#include"cmath"usingnamespacestd;structPoint{doublex;doubley;};PointS[100000];//不使用全局变量可能会超内存boolcmpPointX(Pointa,Pointb){returna.x>b.x;}bo
forcheng
·
2017-10-07 15:00
HD-
ACM算法
专攻系列(13)——How Many Fibs?
问题描述:源码:importjava.math.BigInteger;importjava.util.*;publicclassMain{//主函数publicstaticvoidmain(String[]args){BigIntegera,b,zero=BigInteger.valueOf(0),f1,f2,fn;intcount;Scannercin=newScanner(System.in)
forcheng
·
2017-10-07 15:00
HD-
ACM算法
专攻系列(12)——Integer Inquiry
问题描述:源码:importjava.math.BigInteger;importjava.util.*;publicclassMain{//主函数publicstaticvoidmain(String[]args){intn;BigIntegera,result,zero=BigInteger.valueOf(0);Scannercin=newScanner(System.in);n=cin.n
forcheng
·
2017-10-07 15:00
HD-
ACM算法
专攻系列(11)——Exponentiation
问题描述:源码:考察对大数的计算,需要注意去除前导0与后导0.importjava.math.BigDecimal;importjava.util.*;publicclassMain{//主函数publicstaticvoidmain(String[]args){BigDecimalr;intn;Stringstr;Scannercin=newScanner(System.in);while(ci
forcheng
·
2017-10-07 15:00
HD-
ACM算法
专攻系列(10)——大明A+B
题目描述:源码:需要注意的一点是输出是最简形式,需要去除小数的后导0,而调用stripTrailingZeros()函数后,数会以科学计数法输出,所以需要调用toPlainString().importjava.math.BigDecimal;importjava.util.*;publicclassMain{//主函数publicstaticvoidmain(String[]args){BigD
forcheng
·
2017-10-07 15:00
HD-
ACM算法
专攻系列(9)——大菲波数
题目描述:源码:运用Java大数求解。importjava.math.BigInteger;importjava.util.*;publicclassMain{//主函数publicstaticvoidmain(String[]args){intn,index;BigIntegerf1,f2,fn;Scannercin=newScanner(System.in);n=cin.nextInt();f
forcheng
·
2017-10-07 15:00
HD-
ACM算法
专攻系列(7)——Text Reverse
问题描述:源码:/**/#include"iostream"#include"string"usingnamespacestd;voidPrint(stringstr,intend,intstart){for(inti=end;i>=start;i--)cout>n){getchar();for(inti=0;i
forcheng
·
2017-10-07 15:00
HD-
ACM算法
专攻系列(8)——排序
题目描述:源码:#include"iostream"#include"string"usingnamespacestd;voidOrder(int*p,intn){inttmp;if(np[j+1]){tmp=p[j];p[j]=p[j+1];p[j+1]=tmp;}}}}intmain(){stringstr;intnums[501],count,start,len,num;boolok;whi
forcheng
·
2017-10-07 15:00
HD-
ACM算法
专攻系列(6)——Big Number
题目描述:源码:#include"iostream"#include"cmath"usingnamespacestd;#definePI3.1415926#defineE2.718281828459045intmain(){intn,num;doublesum;cin>>n;for(inti=0;i>num;//sum=0;//for(inti=1;i<=num;i++)//sum+=log10(
forcheng
·
2017-10-07 15:00
HD-
ACM算法
专攻系列(5)——N!
题目描述:源码:#include"iostream"usingnamespacestd;intmain(){intn,digit,carry,tmp;inta[40000];while(cin>>n){if(n0){a[digit]=carry%10;digit++;carry/=10;}}for(intj=digit-1;j>=0;j--){cout<
forcheng
·
2017-10-07 15:00
HD-
ACM算法
专攻系列(4)——A == B ?
题目描述:源码:/**/#include"iostream"#include"string"usingnamespacestd;stringStandard(stringstr){intstart;intlen=str.length();char*p=newchar[len+2];start=0;if(str[0]=='-'||str[0]=='+'){p[0]=str[0];start=1;}e
forcheng
·
2017-10-07 15:00
ACM算法
:迪杰斯特拉最短路径
迪杰斯特拉的用途:迪杰斯特拉算法用于求出图中一个结点到其他所有结点的最短路径。迪杰斯特拉算法是求最短路径中较为常用的算法,而且方便使用易于理解,很适合用来当成最短路径入门的模板实例算法。无论是在有向图还是无向图,都有它的优势之处。迪杰斯特拉的思路:迪杰斯特拉算法的思路非常的清晰,我结合图解来解释(图是网上找的,如有雷同,纯属巧合)先解释各个字母所代表的意思:S代表已经找到了最短路径的点,u代表目前
六小聪
·
2017-10-05 11:49
ACM算法
使用C#解决编程题一
还记得大一时练习
ACM算法
的时光,那时候解题用的是c和c++,最近想练练编程算法,但是c和c++好久没用了,很多地方生疏了。鉴于此,我准备用C#来写写代码。
G_Q_L
·
2017-09-27 21:12
C#
知识综合
ACM算法
:并查集
并查集的用途:并查集大多用在寻找同一类相关元素的题目中,更加通俗的讲,就是存在不同种类或者分类的题目中。例如给定某图,让你计算存在几个不相邻的区域。又比如给定一个代表人的序列,让你确定这个人群中存在几个小团体等等。这些问题都离不开其核心的东西,就是“不同类”。并查集就是在这种不同类问题中寻找相同关系的集群,进而进行其他操作。并查集的思路:并查集的思路很清晰,也很简单,但是我见网上有很多关于并查集的
六小聪
·
2017-09-02 14:27
ACM算法
ACM算法
:树状数组(详细)
树状数组的用途:它用来快速修改和查询一个给定数字序列中,某个区间内值的和,这貌似是树状数组唯一的用处。如果之前了解过线段树,你就会发现,线段树的使用范围更加广泛,而且线段树更加容易理解,但这并不代表树状数组比线段树差。线段树虽然使用范围相对广泛,但是树状数组的性能较高,而且代码量较少,只要理解树状数组之后,你就会发现树状数组的强大之处。树状数组的思路:树状数组核心思想有点二分的思想(似乎很多高效的
六小聪
·
2017-09-01 19:55
ACM算法
ACM算法
:线段树
线段树的用途:线段树,顾名思义,就是对线段序列按照树的方式进行操作。这样,线段序列就可以摒弃查询,增加等操作中的遍历而导致的低效率,从而得到树状结构的log(N)的时间复杂度的优化。线段树一般用于计算线段序列中,某区间元素数的总和,而且这个线段序列是经常进行改动操作的,这个时候,你就要不断的对序列中的每个元素进行更新,并不断的遍历。一般的遍历做法明显不能满足我们的需求,这个时候我们就会想到树。而线
六小聪
·
2017-08-30 11:32
ACM算法
ACM算法
-时间复杂度分析(5.有关时间复杂度递归的分析)
AnalysisofAlgorithm|Set4(SolvingRecurrences)Inthepreviouspost,wediscussedanalysisofloops.Manyalgorithmsarerecursiveinnature.Whenweanalyzethem,wegetarecurrencerelationfortimecomplexity.Wegetrunningtime
OFShare
·
2017-08-29 11:01
ACM-时间复杂度分析
ACM算法
-时间复杂度分析(5.有关时间复杂度递归的分析)
AnalysisofAlgorithm|Set4(SolvingRecurrences)Inthepreviouspost,wediscussedanalysisofloops.Manyalgorithmsarerecursiveinnature.Whenweanalyzethem,wegetarecurrencerelationfortimecomplexity.Wegetrunningtime
OFShare
·
2017-08-29 11:01
ACM-时间复杂度分析
ACM算法
-时间复杂度分析(4.有关时间复杂度循环的分析)
AnalysisofAlgorithms|Set4(AnalysisofLoops)WehavediscussedAsymptoticAnalysis,Worst,AverageandBestCasesandAsymptoticNotationsinpreviousposts.Inthispost,analysisofiterativeprogramswithsimpleexamplesisdis
OFShare
·
2017-08-29 10:57
ACM-时间复杂度分析
ACM算法
-时间复杂度分析(4.有关时间复杂度循环的分析)
AnalysisofAlgorithms|Set4(AnalysisofLoops)WehavediscussedAsymptoticAnalysis,Worst,AverageandBestCasesandAsymptoticNotationsinpreviousposts.Inthispost,analysisofiterativeprogramswithsimpleexamplesisdis
OFShare
·
2017-08-29 10:57
ACM-时间复杂度分析
ACM算法
-时间复杂度分析(3.渐进符号)
AnalysisofAlgorithms|Set3(AsymptoticNotations)WehavediscussedAsymptoticAnalysis,andWorst,AverageandBestCasesofAlgorithms.Themainideaofasymptoticanalysisistohaveameasureofefficiencyofalgorithmsthatdoes
OFShare
·
2017-08-29 10:06
ACM-时间复杂度分析
ACM算法
-时间复杂度分析(3.渐进符号)
AnalysisofAlgorithms|Set3(AsymptoticNotations)WehavediscussedAsymptoticAnalysis,andWorst,AverageandBestCasesofAlgorithms.Themainideaofasymptoticanalysisistohaveameasureofefficiencyofalgorithmsthatdoes
OFShare
·
2017-08-29 10:06
ACM-时间复杂度分析
ACM算法
-时间复杂度分析(2.最坏,平均,最好时间复杂度分析)
AnalysisofAlgorithms|Set2(Worst,AverageandBestCases)Inthepreviouspost,wediscussedhowAsymptoticanalysisovercomestheproblemsofnaivewayofanalyzingalgorithms.Inthispost,wewilltakeanexampleofLinearSearchan
OFShare
·
2017-08-29 10:21
ACM-时间复杂度分析
ACM算法
-时间复杂度分析(2.最坏,平均,最好时间复杂度分析)
AnalysisofAlgorithms|Set2(Worst,AverageandBestCases)Inthepreviouspost,wediscussedhowAsymptoticanalysisovercomestheproblemsofnaivewayofanalyzingalgorithms.Inthispost,wewilltakeanexampleofLinearSearchan
OFShare
·
2017-08-29 10:21
ACM-时间复杂度分析
ACM算法
-时间复杂度分析(1.渐进分析)
写在前面:我看了这几篇文章,对时间复杂度理解更加深刻了。分享给大家。AnalysisofAlgorithms|Set1(AsymptoticAnalysis)Whyperformanceanalysis?Therearemanyimportantthingsthatshouldbetakencareof,likeuserfriendliness,modularity,security,mainta
OFShare
·
2017-08-29 10:56
ACM-时间复杂度分析
ACM算法
-时间复杂度分析(1.渐进分析)
写在前面:我看了这几篇文章,对时间复杂度理解更加深刻了。分享给大家。AnalysisofAlgorithms|Set1(AsymptoticAnalysis)Whyperformanceanalysis?Therearemanyimportantthingsthatshouldbetakencareof,likeuserfriendliness,modularity,security,mainta
OFShare
·
2017-08-29 10:56
ACM-时间复杂度分析
ACM算法
:快速幂取模(详细)
快速幂取模的用途:在ACM这类竞赛中,可能会遇到指数型的数据取模问题,这个时候如果直接用int或者longlong储存,就有可能会超出计算机整数的存取范围,而导致数据出错。所以我们需要一种方法进行计算。而这种方法就是我们这次要讲到的快速幂取模(简称快速幂)。这种算法在时间和空间上都做了尽可能的优化,所以学会之后,会觉得非常好用。快速幂取模的思路:快速幂实现的最基本的理论就是我们离散课上或者数论中学
六小聪
·
2017-08-28 12:21
ACM算法
ACM算法
:广度优先搜索
广度优先搜索的用途:广度优先搜索和深度优先搜索所针对的题型很相似,比如迷宫型问题、数字列问题以及状态搜索等问题。但是它和深度优先搜索的区别在于,深度优先搜索的适用范围更加广泛,因为深度优先搜索存在局限性,有些题目适用深度优先搜索算法可能会出现“深度无限”的问题,这将导致可怕的无限循环。但这并不代表深度优先搜索算法比广度差,由于广度优先搜索需要适用队列储存所有点的状态,这样会比深度更加消耗空间,在题
六小聪
·
2017-08-27 17:01
ACM算法
ACM算法
:深度优先搜索(附剪枝和优先队列的说明)
深度优先搜索的用途:针对迷宫型的搜救、最短路问题以及在数列中搜索符合某些要求的数集问题等等都可以用到深度优先搜索,而且算法时间复杂度比寻常的枚举算法高效很多,代码也普遍更加精简,易于理解。本文我将会例举迷宫型和数列型两种问题进行解释,这样大部分的搜索都与此类似。深度优先搜索的思路:搜索其实就是一种遍历,只不过这种遍历更形象成一种树形结构,从最开始的根节点出发,一直到树的尾端,在从“根”到“尾”的过
六小聪
·
2017-08-26 14:19
ACM算法
ACM算法
:悬线法
悬线法的用途:针对求给定矩阵中满足某条件的极大矩阵,比如“面积最大的长方形、正方形”“周长最长的矩形等等”。可以满足在时间复杂度为O(M*N)的要求,比一般的枚举高效的多,也易于理解。悬线法思路:悬线法,悬线的定义,就是一条竖线,这条竖线要满足上端点在整个矩形上边界或者是一个障碍点。然后以这条悬线进行左右移动,直到移至障碍点或者是矩阵边界,进而确定这条悬线所在的极大矩阵。也就是说,我们要针对矩阵中
六小聪
·
2017-08-23 11:15
悬线法
ACM
棋盘制作
算法
ACM算法
上一页
1
2
3
4
5
6
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他