0% found this document useful (0 votes)
95 views5 pages

Programming Camp Syl Lab Us

The document provides a list of topics for programming competitions organized into the following categories: 1) Basic Geometry, 2) Computational Geometry, 3) String Algorithms, 4) Basic Graphs, 5) Flow Networks/Matching, 6) Dynamic Programming, and 7) Greedy Algorithms. For each topic, it outlines relevant algorithms, data structures, problems from websites like SPOJ and TopCoder to practice, and suggested reading materials with links.

Uploaded by

Zubayer Ahmed
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
95 views5 pages

Programming Camp Syl Lab Us

The document provides a list of topics for programming competitions organized into the following categories: 1) Basic Geometry, 2) Computational Geometry, 3) String Algorithms, 4) Basic Graphs, 5) Flow Networks/Matching, 6) Dynamic Programming, and 7) Greedy Algorithms. For each topic, it outlines relevant algorithms, data structures, problems from websites like SPOJ and TopCoder to practice, and suggested reading materials with links.

Uploaded by

Zubayer Ahmed
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

ListofTopicsforprogrammingCompetitions

1. BasicGeometry/EuclideanGeometry/CoordfinateGeometry/[3Dvariantsofeverything].
2. ComputationalGeometry.
a. GrahamScanalgorithmforConvexHullO(n*log(n)).
b. Onlineconstructionof3DconvexhullinO(n^2).
c. BentleyOttmannalgorithmtolistallintersectionpointsofnlinesegmentsinO((n+I)*logn).
SuggestedReading
1. [Link]
d. RotatingCalipersTechnique.
SuggestedReading[Link]
ProblemsReferthearticleforalistofproblemswhichcanbesolvedusingRotatingCaliperstechnique.
e. LineSweep/PlaneSweepalgorithms
Area/PerimeterofUnionofRectangles.
Closestpairofpoints.
SuggestedReading
1. [Link]
ProblemsFollowthetutorialforlistofproblems.
f. AreaofUnionofCircles.
g. DelayunayTriangulationofnpointsinO(n*logn).
h. VoronoiDiagramsofnpointsinO(n*logn)usingFortunesalgorithm.
i. Pointinapolygonproblem
O(n)solutionwithoutpreprocessing.
O(logn)algorithmwithO(n*logn)preprocessingforconvexpolygons.
j. Problemsoncomputationalgeometry
BSHEEP,BULK,SEGVIS,CONDUIT,RUNAWAY,DIRVS,RAIN1,SHAMAN,TCUTTER,LITEPIPE,RHOMBS,FSHEEP,FLBRKLIN,CERC07P,
BAC,ALTARS,CERC07C,NECKLACE,CH3D,RECTANGL,POLYSSQ,FOREST2,KPPOLY,RAIN2,SEGMENTS,ARCHPLG,BALLOON,
CIRCLES,COMPASS,EOWAMRT,ICERINKonSPOJ.
CultureGrowth,PolygonCoveronTopcoder.
k. SuggestedReading
ComputationalGeometry:[Link].
3. StringAlgorithm.
a. KnuthMorrisPrattalgorithm.
ProblemsNHAY,PERIODonSPOJ.
SuggestedReading
1. CormenchapteronStrings.
2. [Link]
b. AhoCorasickalgorithm.
ProblemsWPUZZLESonSPOJ.
c. SuffixArrays
O(n^2*logn)Naivemethodofsuffixarrayconstruction
O(n*logn^2)methodofsuffixarrayconstruction
O(n*logn)methodofsuffixarrayconstruction.
O(n)methodofsuffixarrayconstruction
O(n)LCApreprocessonSuffixArraystosolveavarietyofstringproblems.
d. SuffixTrees
O(n)constructionofSuffixtreesusingUkkenonsalgorithm.
O(n)constructionofSuffixTreesifprovidedwithSuffixArraysusingFarachsalgorithm.
e. SuffixAutomata
O(n)SuffixAutomatonconstruction.
f. DictionaryOfBasicFactors
O(n*logn)methodofDBFconstructionusingRadixSort.
g. ManacharsalgorithmtofindLenghofpalindromicsubstringofastringcenteredatapositionforeachpositioninthe
[Link]>O(n).
h. SearchingandpreprocessingRegularExpressionsconsistingof?,*.
i. Multidimentionalpatternmatching.
j. ProblemsonStrings[canbesolvedwithavarietyoftechniques]
DISUBSTR,PLD,MSTRING,REPEATS,JEWELS,ARCHIVER,PROPKEY,LITELANG,EMOTICON,WORDS,AMCODES,UCODES,PT07H,
MINSEQ,TOPALIN,BWHEELER,BEADS,SARRAY,LCS,LCS2,SUBST1,PHRASES,PRETILEonSPOJ
[Link]
4. BasicGraphs[beginner].
a. Representationofgraphsasadjacencylist,adjacencymatrix,incidencematrixandedgelistandusesofdifferent
representationsindifferentscenarios.
b. BreadthFirstSearch.
problems
1. PPATH,ONEZERO,WATERonSPOJ
c. DepthFirstSearch.
d. StronglyConnectedComponents.
problems
1. TOURandBOTTOMonSPOJ.
e. BiconnectedComponents,Findingarticulationpointsandbridges].
problems
1. RELINETS,PT07AonSPOJ.
f. Dijkstraalgorithm
problems
1. SHPATHonSPOJ.
g. FloydWarshallalgorithm
problems
1. COURIERonSPOJ.
h. MinimumSpanningTree
problems
1. BLINNETonSPOJ.
i. Floodfillalgorithm
j. Topologicalsort
k. BellmanFordalgorithm.
l. EulerTour/Path.
problemsWORDS1onSPOJ.
m. SuggestedreadingformostofthetopicsinGraphalgorithms
[Link]
Alsorefertothetutorialforproblemsconcerningthesetechniques.
Cormenchapter22to24.
5. Flownetworks/matchingetcetc.[Interdiate/Advanced].
a. MaximumflowusingFordFulkersonMethod.
SuggestedReading
1. [Link]
problemsTAXI,POTHOLE,IM,QUEST4,MUDDY,EN,CABLETV,STEAD,NETADMIN,COCONUTS,OPTMonSPOJ.
b. MaximumflowusingDinicsAlgorithm.
ProblemsPROFITonspoj.
c. MinimumCostMaximumFlow.
SuccessiveShortestpathalgorithm.
CycleCancellingalgorithm.
SuggestedReading
1. [Link]
d. MaximumweightedBipartiteMatching(KuhnMunkrasalgorithm/HungarianMethod)
problemsGREED,SCITIES,TOURSonSPOJ|[Link]
e. StoerWagnermincutalgorithm.
f. HopcroftKarpbipartitematchingalgorithm.
problemsANGELSonSPOJ.
g. Maximummatchingingeneralgraph(blossomshrinking)
h. GomoryHuTrees.
i)ProblemsMCQUERYonSpoj.
i. ChinesePostmanProblem.
problems[Link]
SuggestedReading[Link]
j. SuggestedReadingforthefullcategory>
NetworkflowAlgorithmsandApplicationsbyAhuja
Cormenbookchapter25.
6. DynamicProgramming.
a. SuggestedReadingDynamicProgramming(DP)asatabulationmethod
CormenchapteronDP
b. Standardproblems(youshouldreallyfeelcomfortablewiththesetypes)
[Link]
[Link]
c. Statespacereduction
[Link]
[Link]
[Link]
d. Solvinginthereverseeasiercharacterizationslookingfromtheend
[Link]
[Link]
e. Counting/optimizingarrangementssatisfyingsomespecifiedproperties
[Link]
[Link]
f. Strategiesandexpectedvalues
[Link]
[Link]
[Link]
[Link]
g. DPonprobabilityspaces
[Link]
[Link]
[Link]
h. DPontrees
[Link]
[Link]
[Link]
i. DPwithdatastructures
[Link]
[Link]
[Link]
[Link]
j. SymmetriccharacterizationofDPstate
[Link]
k. Agoodcollectionofproblems
[Link]
[Link]
7. Greedy.
a. SuggestedReading
ChapteronGreedyalgorithmsinCormen.
[Link]
b. problemsrefertothetopcodertutorial.
8. NumberTheory.
a. Modulusarithmeticbasicpostulates[Includingmodularlinearequations,ContinuedfractionandPell'sequation]
SuggestedReading
1. Chapter1fromNumberTheoryforComputingbySYYan[Recommended]
2. 31.1,31.3and31.4fromCormen
3. [Link]/tc?module=Static&d1=tutorials&d2=primeNumbers
Problems
1. [Link]
2. [Link]
3. [Link]
4. [Link]
5. [Link]
b. Fermat'stheorem,EulerTotienttheorem(totientfunction,order,primitiveroots)
SuggestedReading
1. 1.6,2.2fromNumberTheorybySYYan
2. 31.6,31.7fromCormen
Problems
1. [Link]
2. [Link]
c. Chineseremaindertheorem
SuggestedReading
1. 31.5fromCormen
2. 1.6fromNumberTheorybySYYan
Problems
1. ProjectEuler271
2. [Link]
d. Primalitytests
DeterministicO(sqrt(n))approach
ProbabilisticprimalitytestsFermatprimalitytest,MillerRabinPrimalitytest
1. SuggestedReading
a. [Link]
b. Cormen31.8
c. 2.2fromNumberTheorybySYYan
2. Problems
a. PON,PRIC,SOLSTRASonSPOJ
b. [Link]
e. PrimegenerationtechniquesSieveofErastothenes
SuggestedProblemsPRIME1onSPOJ
f. GCDusingeuclideanmethod
SuggestedReading
1. 31.2Cormen
Problems
1. GCDonSPOJ
2. [Link]
g. LogarithmicExponentiation
SuggestedReading
1. [Link]
h. IntegerFactorization
NaiveO(sqrt(n))method
PollardRhofactorization
SuggestedReading
1. 2.3fromNumberTheorySYYan
2. 31.9Cormen
Problems
1. [Link]
2. [Link]
3. [Link]
i. Stirlingnumbers
j. Wilsontheorem
nCr%pinO(p)preprocessandO(logn)query
k. LucasTheorem
l. SuggestedReadingforNumberTheory
NumbertheoryforcomputingbySongYYan[Simplebookdescribingconceptsindetails]
ConceptsarealsosuperficiallycoveredinChapter31ofIntroductiontoAlgorithmsbyCormen
[Link]
[Link]
m. ProblemsonNumberTheory
[Link]
[Link]
9. Math(Probability,Counting,GameTheory,GroupTheory,Generatingfunctions,PermutationCycles,LinearAlgebra)
a. Probability.
Syllabus
BasicprobabilityandConditionalprobability
1. Suggestedproblems
a. [Link]
b. [Link]
Randomvariables,probabilitygeneratingfunctions
Mathematicalexpectation+Linearityofexpectation
1. Suggestedproblems
a. [Link]
b. [Link]
Specialdiscreteandcontinuousprobabilitydistributions
1. Bernoulli,Binomial,Poisson,normaldistribution
2. SuggestedProblem
a. [Link]
SuggestedReadings
1. CormenappendixC(verybasic)
2. Topcoderprobabiltytutorial[Link]
3. [Link]
4. [Link]
5. WilliamFeller,Anintroductiontoprobabilitytheoryanditsapplications
b. Counting
Syllabus
BasicprinciplesPigeonholeprinciple,addition,multiplicationrules
1. Suggestedproblems
a. [Link]
b. [Link]
3. Suggestedreadings
a. [Link]
b. [Link]
c. [Link]
Inclusionexclusion
1. Suggestedreadings
a. [Link]
2. Suggestedproblems
a. [Link]
b. [Link]
Specialnumbers
1. SuggestedreadingStirling,eurlerian,harmonic,bernoulli,fibonnaccinumbers
a. [Link]
b. [Link]
c. [Link]
d. [Link]
e. [Link]
f. ConcretemathematicsbyKnuth
2. Suggestedproblems
a. [Link]
b. [Link]
c. [Link]
d. [Link]
AdvancedcountingtechniquesPolyacounting,burnsideslemma
1. Suggestedreading
a. [Link]
b. [Link]
2. SuggestedProblems
a. [Link]
b. [Link]
[Link]
Syllabus
BasicprinciplesandNimgame
1. Spraguegrundytheorem,grundynumbers
2. Suggestedreadings
a. [Link]
b. [Link]
c. [Link]
d. [Link]
3. Suggestedproblems
a. [Link]
b. [Link]
Hackenbush
1. Suggestedreadings
a. [Link]
b. [Link]
2. Suggestedproblems
a. [Link]
b. [Link]
[Link]
Syllabus
MatrixOperations
1. Additionandsubtractionofmatrices
a. SuggestedReading
i. Cormen28.1
2. Multiplication(Strassen'salgorithm),logarithmicexponentiation
a. Suggestedreading
i. Cormen28.2
ii.LinearAlgebrabyKennethHoffmanSection1.6
b. Problems
i. [Link]
3. Matrixtransformations[Transpose,RotationofMatrix,RepresentingLineartransformationsusingmatrix]
a. SuggestedReading
i. LinearAlgebraByKennethHoffmanSection3.1,3.2,3.4,3.7
b. Problems
i. [Link]
[Link]
4. Determinant,RankandInverseofMatrix[GausseanElimination,GaussJordanElimination]
a. SuggestedReading
i. 28.4Cormen
ii.LinearAlgebrabyKennethChapter1
b. Problems
i. [Link]
ii.[Link]
iii. [Link]
[Link]
5. Solvingsystemoflinearequations
a. SuggestedReading
i. 28.3Cormen
ii.LinearAlgebrabyKennethChapter1
b. Problems
i. [Link]
6. Usingmatrixexponentiationtosolverecurrences
a. SuggestedReading
i. [Link]
b. Problems
i. REC,RABBIT1,PLHOPonspoj
ii.[Link]
[Link]
[Link]
7. EigenvaluesandEigenvectors
a. Problems
i. [Link]
Polynomials
1. Rootsofapolynomial[Primefactorizationofapolynomial,Integerrootsofapolynomial,Allrealroots
ofapolynomial]
a. Problems
i. [Link]
[Link],ROOTCIPHonSpoj
2. LagrangeInterpolation
a. Problems
i. [Link]
ii.[Link]
[Link]
SuggestedReading
1. ArtofComputerProgrammingbyKnuthVol.3
Problems
1. ShuffleMethod,PermutationandWordGameontopcoder.
[Link]
BernsideLemma,Poliastheorem
1. SuggestedReading
a. Hernstein'stopicsinalgebra
b. [Link]
2. Problems
a. TRANSPonspoj
b. [Link]
b. Generatingfunctions
SuggestedReading
1. HerbertWilf'sgeneratingfunctionology
2. RobertSedgewickandFlajoulet'sCombinatorialanalysis

[Link].
i. Basic
a. Arrays/Stacks/Queues:
Problems
1. [Link]
2. [Link]
3. [Link]
Reading:
1. CLRS:section10.1
2. [Link]

[Link]/DoublyLinkedList:
Problems
1. [Link]
Reading:CLRS:section10.2,MarkAllenWeiesChapter3
[Link]:
Problems
1. [Link]
2. [Link]
Reading:CLRS:Chapter11,MarkAllenWeiesChapter5
[Link]/queue
Problems
1. [Link]
[Link]/naryTrees
Reading
1. CLRS:section10.4
2. CLRS:Chapter12
3. MarkAllenWeiesChapter4
4. [Link]
[Link]
Problems
1. [Link]
2. [Link]
Reading:MarkAllenWeiesChapter6
[Link]
a. Trie(Keywordtree)
Problems
1. [Link]
2. [Link]
Reading
b. Intervaltrees/SegmentTrees
Problems
1. [Link]
2. [Link]
Reading
c. Fenwick(BinaryIndexed)trees
Problems
1. [Link]
Reading:[Link]
d. Disjointdatastructures
Problems
1. [Link]
2. [Link]
Reading:
1. [Link]
2. MarkAllenWeiesChapter8
e. RangeminimumQuery(RMQ)
Problems
1. [Link]
Reading[Link]
f. Customizedinterval/segmenttrees(AugmentedDS)
Problems
1. [Link]
2. [Link]
Reading:CLRS:Chapter14(augmentedDS)
[Link]
Problems
1.[Link]
Reading

[Link](Nottobecovered)
a. SplayTrees
b. B/B+Trees
c. kdTrees
d. RedblackTrees
e. SkipList
f. Binomial/Fibonacciheaps

[Link]
1. [Link]
2. [Link]
3. [Link]
4. [Link]
5. [Link]
6. [Link]
7. [Link]
8. [Link]
9. [Link]

[Link]/Bruteforcewritingtechniques/Randomizedalgorithms.
a. Backtracking[Beginner].
problems>
1. Nqueensproblems
2. KnightsTour
3. SudokuProblem
4. TilingProblem.
5. 15puzzle.
b. DancingLinksandAlgorithmXgivenbyKnuth[Advanced]
problemsPRLGAME,SUDOKU,NQUEENonSPOJ
Suggestedreading
1. [Link]
c. BinarySearch[Beginner].
[Link].
findingallrealrootsofapolynomialusingbinarysearch.[intermediate].
SuggestedReading
1. [Link]
d. TernarySearch[Intermediate].
problems
1. [Link]
2. [Link]
3. [Link]
4. [Link]
5. [Link]
6. [Link]
7. [Link]
e. Meetinthemiddle[Intermediate].
problems
1. [Link]
2. [Link]
f. HillClimbing[Advanced].
g. RegularIterationtoreachafixedpoint[Advanced].
NewtonRaphsonmethodtofindrootofamathematicalfunction.
Iterationstosolvelinearnonhomogeneoussystemofequations.
h. RandomizedAlgorithms[Intermediate]
QuickSort.
[Link]>
a. ArithmeticPrecision[Beginner].
SuggestedReading
1. [Link]
b. Representingsetswithbitmasksandmanipulatingbitmasks[Beginner].
SuggestedReading
1. [Link]
problemsrefertothetutoriallinkinSuggestedreadingsection.
reshareno

You might also like