0% found this document useful (0 votes)
46 views

Programming Camp Syllabus

The document provides an overview of various topics in computational geometry and algorithms, including: 1. Computational geometry algorithms such as the Graham Scan and Bentley-Ottmann algorithms. 2. String algorithms like Knuth-Morris-Pratt, suffix arrays, and Manacher's algorithm. 3. Basic graph algorithms including breadth-first search, depth-first search, minimum spanning trees, and topological sorting. 4. More advanced topics like network flows, matching algorithms, dynamic programming, and greedy algorithms are also listed along with references and example problems.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
46 views

Programming Camp Syllabus

The document provides an overview of various topics in computational geometry and algorithms, including: 1. Computational geometry algorithms such as the Graham Scan and Bentley-Ottmann algorithms. 2. String algorithms like Knuth-Morris-Pratt, suffix arrays, and Manacher's algorithm. 3. Basic graph algorithms including breadth-first search, depth-first search, minimum spanning trees, and topological sorting. 4. More advanced topics like network flows, matching algorithms, dynamic programming, and greedy algorithms are also listed along with references and example problems.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

BasicGeometry/EuclideanGeometryordinateGeometry/[3D

variants
ofeverything].
1.ComputationalGeometry.
GrahamScanalgorithmforConvexHullO(n*log(n)).
a.Onlineconstructionof3DconvexhullinO(n^2).
b.BentleyOttmannalgorithmtolistallintersectionpointsofnlinesegmentsinO((n+I)
*logn).
SuggestedReading
1.http://softsurfer.com/Archive/algorithm_0108/algorithm_0108.htm
c.RotatingCalipersTechnique.
SuggestedReading
http://cgm.cs.mcgill.ca/~orm/rotcal.html
ProblemsReferthearticleforalistofproblemswhichcanbesolvedusing
RotatingCaliperstechnique.
d.LineSweep/PlaneSweepalgorithms
Area/PerimeterofUnionofRectangles.
Closestpairofpoints.
SuggestedReading
1.http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=lineSweep
ProblemsFollowthetutorialforlistofproblems.
e.AreaofUnionofCircles.
f.DelaunayTriangulationofnpointsinO(n*logn).
g.VoronoiDiagramsofnpointsinO(n*logn)usingFortunesalgorithm.
h.Pointinapolygonproblem
O(n)solutionwithoutpreprocessing.
O(logn)algorithmwithO(n*logn)preprocessingforconvexpolygons.
i.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
,
ICERINK
onSPOJ.
CultureGrowth
,
PolygonCover
onTopcoder.
j.SuggestedReading
ComputationalGeometry:Algorithmsandapplications.MarkDeBurg.

TobeDonetill6thmay.

2.StringAlgorithm
.
a.KnuthMorrisPrat
talgorithm
.
ProblemsNHAY,PERIODonSPOJ.
SuggestedReading
1.CormenchapteronStrings.
2.http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=stringSearching
b.AhoCorasickalgorithm.
ProblemsWPUZZLESonSPOJ.
c.SuffixArrays
O(n^2*logn)Naivemethodofsuffixarrayconstruction
O(n*logn^2)methodofsuffixarrayconstruction
O(n*logn)methodofsuffixarrayconstruction.
O(n)meth
odofsuffixarrayconstruction
O(n)LCApreprocessonSuffixArraystosolveavarietyofstringproblems.
d.SuffixTrees
O(n)constructionofSuffixtreesusingUkkononsalgorithm.
O(n)constructionofSuffixTreesifprovidedwithSuffixArraysusing
Farachsalgorithm.
e.SuffixAutomata
O(n)SuffixAutomatonconstruction.
f.DictionaryOfBasicFactors
O(n*logn)methodofDBFconstructionusingRadixSort.
g.Manachersalgorithm
tofindlengthofpalindromicsubstringofastringcenteredata
positionforeachpositioninthestring.Runtime>O(n).
h.SearchingandpreprocessingRegularExpressionsconsistingof?,*.
i.Multidimensionalpatternmatching.
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
,
PRETILE
onSPOJ
http://www.algorithmist.com/index.php/Category:String_algorithms

Till11may.

3.BasicGraphs[beginner]
.
a.Representationofgraphsasadjacencylist,adjacencymatrix,incidencematrixandedge
listandusesofdifferentrepresentationsindifferentscenarios.
b.BreadthFirstSearch.
problems

1.PPATH
,
ONEZERO
,
WATER
onSPOJ
c.DepthFirstSearch.
d.StronglyConnectedComponents.
problems
1.TOURand
BOTTOM
onSPOJ.
e.BiconnectedComponents,Findingarticulationpointsandbridges].
problems
1.RELINETS
,
PT07A
onSPOJ.
f.Dijkstraalgorithm
problems
1.SHPATH
onSPOJ.
g.FloydWarshallalgorithm
problems
1.COURIER
onSPOJ.
h.MinimumSpanningTree
problems
1.BLINNET
onSPOJ.
i.Floodfillalgorithm
j.Topologicalsort
k.BellmanFordalgorithm.
l.EulerTour/Path.
problems
WORDS1
onSPOJ.
m.SuggestedreadingformostofthetopicsinGraphalgorithms
http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=graphsDataStrucs1
.
Alsorefertothetutorialforproblemsconcerningthesetechniques.
Cormenchapter22to24.

Till13may.(beforecomingiitkitshouldbedone:))

4.Flownetworks/matchingetcetc.[Intermediate/Advanced].
a.MaximumflowusingFordFulkersonMethod.
SuggestedReading
1.http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=maxFlow
problems
TAXI
,
POTHOLE
,
IM
,
QUEST4
,
MUDDY
,
EN
,
CABLETV
,
STEAD
,
NETADMIN
,
COCONUTS
,
OPTM
onSPOJ.
b.MaximumflowusingDinicsAlgorithm.
Problems
PROFIT
onspoj.
c.MinimumCostMaximumFlow.
SuccessiveShortestpathalgorithm.
CycleCancellingalgorithm.
SuggestedReading
1.http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=minimumCostFlow1
d.MaximumweightedBipartiteMatching(KuhnMunkrasalgorithm/HungarianMethod)
problems
GREED
,
SCITIES
,
TOURS
onSPOJ|
http://www.topcoder.com/stat?c=problem_statement&pm=8143
e.StoerWagnermincutalgorithm.
f.HopcroftKarpbipartitematchingalgorithm.
1.problems
ANGELS
onSPOJ.
g.Maximummatchingingeneralgraph(blossomshrinking)
h.GomoryHuTrees.aa
i)Problems
MCQUERY
onSpoj.
i.ChinesePostmanProblem.
problems
http://acm.uva.es/archive/nuevoportal/data/problem.php?p=4039
SuggestedReading
http://eie507.eie.polyu.edu.hk/sssubmission/B7a/
j.SuggestedReadingforthefullcategory>
NetworkflowAlgorithmsandApplicationsbyAhuja
Cormenbookchapter25.

Till20thmay.

5.DynamicProgramming.
a.SuggestedReadingDynamicProgramming(DP)asatabulationmethod
CormenchapteronDP
b.Standardproblems(youshouldreallyfeelcomfortablewiththesetypes)
http://www.topcoder.com/stat?c=problem_statement&pm=8570&rd=12012&rm=269199&cr=7581406
http://www.topcoder.com/stat?c=problem_statement&pm=10765&rd=14183
c.Statespacereduction
http://www.topcoder.com/stat?c=problem_statement&pm=10902
http://www.topcoder.com/stat?c=problem_statement&pm=3001
http://www.topcoder.com/stat?c=problem_statement&pm=8605&rd=12012&rm=269199&cr=7581406
d.Solvinginthereverseeasiercharacterizationslookingfromtheend
http://www.spoj.pl/problems/MUSKET
http://www.topcoder.com/stat?c=problem_statement&pm=5908
e.Counting/optimizingarrangementssatisfyingsomespecifiedproperties
http://www.topcoder.com/stat?c=problem_statement&pm=8306

http://www.topcoder.com/stat?c=problem_statement&pm=784
9
Strategiesandexpectedvalues
http://www.topcoder.com/stat?c=problem_statement&pm=10765&rd=14183
http://www.topcoder.com/stat?c=problem_statement&pm=10806
http://www.topcoder.com/stat?c=problem_statement&pm=7828
http://www.topcoder.com/stat?c=problem_statement&pm=7316
f.DPonprobabilityspaces
http://www.topcoder.com/stat?c=problem_statement&pm=7422
http://www.topcoder.com/stat?c=problem_statement&pm=2959
http://www.topcoder.com/stat?c=problem_statement&pm=10335
g.DPontrees
http://www.topcoder.com/stat?c=problem_statement&pm=10800
http://www.topcoder.com/stat?c=problem_statement&pm=10737
http://www.topcoder.com/stat?c=problem_solution&rm=266678&rd=10958&pm=8266&cr=7581406
h.DPwithdatastructures
http://www.spoj.pl/problems/INCSEQ/
http://www.spoj.pl/problems/INCDSEQ/
http://www.spoj.pl/problems/LIS2/
http://www.topcoder.com/stat?c=problem_statement&pm=1986
i.SymmetriccharacterizationofDPstate
http://www.topcoder.com/stat?c=problem_statement&pm=8610
j.Agoodcollectionofproblems
http://codeforces.com/blog/entry/325
http://problemclassifier.appspot.com/index.jsp?search=dp&usr=

Till28thmay.
6.Greedy.
a.SuggestedReading
ChapteronGreedyalgorithmsinCormen.
http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=greedyAlg
b.problemsrefertothetopcodertutorial.
7.NumberTheory.
a.Modulusarithmeticbasicpostulates[Includingmodularlinearequations,Continued
fractionandPell'sequation]
SuggestedReading
1.Chapter1fromNumberTheoryforComputingbySYYan[Recommended]
2.31.1,31.3and31.4fromCormen
3.www.topcoder.com/tc?module=Static&d1=tutorials&d2=primeNumbers
Problems
1.http://projecteuler.net/index.php?section=problems&id=64
2.http://projecteuler.net/index.php?section=problems&id=65
3.http://projecteuler.net/index.php?section=problems&id=66
4.http://www.topcoder.com/stat?c=problem_statement&pm=6408&rd=9826
5.http://www.topcoder.com/stat?c=problem_statement&pm=2342
b.Fermat'stheorem,EulerTotienttheorem(totientfunction,order,primitiveroots)
SuggestedReading
1.1.6,2.2fromNumberTheorybySYYan
2.31.6,31.7fromCormen

Problems

1.http://projecteuler.net/index.php?section=problems&id=70
2.http://www.spoj.pl/problems/NDIVPHI/
c.Chineseremaindertheorem
SuggestedReading
1.31.5fromCormen
2.1.6fromNumberTheorybySYYan
Problems
1.ProjectEuler271
2.http://www.topcoder.com/stat?c=problem_statement&pm=10551&rd=13903
d.Primalitytests
DeterministicO(sqrt(n))approach
ProbabilisticprimalitytestsFermatprimalitytest,MillerRabinPrimalitytest
1.SuggestedReading
a.http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=primalityTesting
b.Cormen31.8
c.2.2fromNumberTheorybySYYan
2.Problems
a.PON,PRIC,SOLSTRASonSPOJ
b.http://www.topcoder.com/stat?c=problem_statement&pm=4515
e.PrimegenerationtechniquesSieveofErastothenes
SuggestedProblemsPRIME1onSPOJ
f.GCDusingeuclideanmethod
SuggestedReading
1.31.2Cormen

Problems
1.GCDonSPOJ
2.http://uva.onlinejudge.org/external/114/11424.html
g.LogarithmicExponentiation
SuggestedReading
1.http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=primalityTesting
h.IntegerFactorization
NaiveO(sqrt(n))method
PollardRhofactorization
SuggestedReading
1.2.3fromNumberTheorySYYan
2.31.9Cormen
Problems
1.http://www.topcoder.com/stat?c=problem_statement&pm=2986&rd=5862
2.http://www.spoj.pl/problems/DIVSUM2/
3.http://www.topcoder.com/stat?c=problem_statement&pm=4481&rd=6538
i.Stirlingnumbers
j.Wilsontheorem
nCr%pinO(p)preprocessandO(logn)query
k.LucasTheorem
l.SuggestedReadingforNumberTheory
NumbertheoryforcomputingbySongYYan[Simplebookdescribingconceptsin
details]
ConceptsarealsosuperficiallycoveredinChapter31ofIntroductiontoAlgorithms
byCormen
http://www.codechef.com/wiki/tutorialnumbertheory
http://www.algorithmist.com/index.php/Category:Number_Theory
m.ProblemsonNumberTheory
http://www.algorithmist.com/index.php/Category:Number_Theory
http://problemclassifier.appspot.com/index.jsp?search=number&usr=
Till6thjune.
8.Math(Probability,Counting,GameTheory,GroupTheory,Generatingfunctions,Permutation
Cycles,LinearAlgebra)
a.Probability.
Syllabus
BasicprobabilityandConditionalprobability
1.Suggestedproblems
a.http://www.spoj.pl/problems/CT16E/
b.http://www.spoj.pl/problems/CHICAGO/
Randomvariables,probabilitygeneratingfunctions
Mathematicalexpectation+Linearityofexpectation
1.Suggestedproblems
a.http://www.spoj.pl/problems/FAVDICE/
b.http://www.topcoder.com/stat?c=problem_statement&pm=10744
Specialdiscreteandcontinuousprobabilitydistributions
1.Bernoulli,Binomial,Poisson,normaldistribution
2.SuggestedProblem
a.http://acm.sgu.ru/problem.php?contest=0&problem=498
SuggestedReadings
1.CormenappendixC(verybasic)
2.Topcoderprobabiltytutorial
http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=probabilities
3.http://en.wikipedia.org/wiki/Random_variable
4.http://en.wikipedia.org/wiki/Expected_value
5.WilliamFeller,Anintroductiontoprobabilitytheoryanditsapplications
b.Counting
Syllabus
BasicprinciplesPigeonholeprinciple,addition,multiplicationrules
1.Suggestedproblems
a.http://acm.timus.ru/problem.aspx?space=1&num=1690
b.http://www.topcoder.com/stat?c=problem_statement&pm=10805
3.Suggestedreadings
a.http://en.wikipedia.org/wiki/Combinatorial_principles
b.http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=combinatorics
c.http://www.maa.org/editorial/knot/pigeonhole.html
Inclusionexclusion
1.Suggestedreadings
a.http://en.wikipedia.org/wiki/Inclusionexclusion_principle
2.Suggestedproblems
a.http://www.topcoder.com/stat?c=problem_statement&pm=4463&rd=6536
b.http://www.topcoder.com/stat?c=problem_statement&pm=10238
Specialnumbers
1.SuggestedreadingStirling,eurlerian,harmonic,bernoulli,fibonnacci

numbers
a.http://en.wikipedia.org/wiki/Stirling_number
b.http://en.wikipedia.org/wiki/Eulerian_numbers
c.http://en.wikipedia.org/wiki/Harmonic_series_(mathematics)
d.http://en.wikipedia.org/wiki/Bernoulli_number
e.http://en.wikipedia.org/wiki/Fibonnaci_numbers
f.ConcretemathematicsbyKnuth
2.Suggestedproblems
a.http://www.topcoder.com/stat?c=problem_statement&pm=1643
b.http://www.topcoder.com/stat?c=problem_statement&pm=8202&rd=11125
c.http://www.topcoder.com/stat?c=problem_statement&pm=8725
d.http://www.topcoder.com/stat?c=problem_statement&pm=2292&rd=10709
AdvancedcountingtechniquesPolyacounting,burnsideslemma
1.Suggestedreading
a.http://en.wikipedia.org/wiki/Burnside's_lemma
b.http://petrmitrichev.blogspot.com/2008/11/burnsideslemma.html
2.SuggestedProblems
a.http://www.topcoder.com/stat?c=problem_statement&pm=9975
b.http://www.spoj.pl/problems/TRANSP/
c.Gametheory
Syllabus
BasicprinciplesandNimgame
1.Spraguegrundytheorem,grundynumbers
2.Suggestedreadings
a.http://en.wikipedia.org/wiki/Sprague%E2%80%93Grundy_theorem
b.http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=algorithmGames
c.http://www.ams.org/samplings/featurecolumn/fcarcgames1
d.http://www.codechef.com/wiki/tutorialgametheory
3.Suggestedproblems
a.http://www.topcoder.com/stat?c=problem_statement&pm=3491&rd=6517
b.http://www.topcoder.com/stat?c=problem_statement&pm=3491&rd=6517
Hackenbush
1.Suggestedreadings
a.http://en.wikipedia.org/wiki/Hackenbush
b.http://www.ams.org/samplings/featurecolumn/fcarcpartizan1
2.Suggestedproblems
a.http://www.cs.caltech.edu/ipsc/problems/g.html
b.http://www.spoj.pl/problems/PT07A/
d.LinearAlgebra
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.http://uva.onlinejudge.org/external/111/11149.html
3.Matrixtransformations[Transpose,RotationofMatrix,RepresentingLinear
transformationsusingmatrix]
a.SuggestedReading
i.LinearAlgebraByKennethHoffmanSection3.1,3.2,3.4,3.7
b.Problems
i.http://www.topcoder.com/stat?c=problem_statement&pm=6877
ii. JPIXonSpoj
4.Determinant,RankandInverseofMatrix[GausseanElimination,GaussJordan
Elimination]
a.SuggestedReading
i.28.4Cormen
ii. LinearAlgebrabyKennethChapter1
b.Problems
i.http://www.topcoder.com/stat?c=problem_statement&pm=8174
ii. http://www.topcoder.com/stat?c=problem_statement&pm=6407&rd=9986

iii. http://www.topcoder.com/stat?c=problem_statement&pm=8587
iv. HIGHonSpoj
5.Solvingsystemoflinearequations
a.SuggestedReading
i.28.3Cormen
ii. LinearAlgebrabyKennethChapter1
b.Problems
i.http://www.topcoder.com/stat?c=problem_statement&pm=3942&rd=6520
6.Usingmatrixexponentiationtosolverecurrences
a.SuggestedReading
i.http://www.topcoder.com/tc?module=Static&d1=features&d2=010408
b.Problems
i.REC,RABBIT1,PLHOPonspoj
ii. http://www.topcoder.com/stat?c=problem_statement&pm=6386,
http://www.topcoder.com/stat?c=problem_statement&pm=7262,
http://www.topcoder.com/stat?c=problem_statement&pm=6877
7.EigenvaluesandEigenvectors
a.Problems
i.http://www.topcoder.com/stat?c=problem_statement&pm=2423&rd=4780
Polynomials
1.Rootsofapolynomial[Primefactorizationofapolynomial,Integerrootsof
apolynomial,Allrealrootsofapolynomial]
a.Problems
i.http://www.topcoder.com/stat?c=problem_statement&pm=8273&rd=10798
ii. POLYEQ,ROOTCIPHonSpoj
2.LagrangeInterpolation
a.Problems
i.http://www.topcoder.com/stat?c=problem_statement&pm=10239
ii. http://www.topcoder.com/stat?c=problem_statement&pm=8725
e.Permutationcycles
SuggestedReading
1.ArtofComputerProgrammingbyKnuthVol.3
Problems
1.ShuffleMethod,PermutationandWordGameontopcoder.
f.GroupTheory
BurnsideLemma,Polyastheorem
1.SuggestedReading
a.Hernstein'stopicsinalgebra
b.http://petrmitrichev.blogspot.com/2008/11/burnsideslemma.html
2.Problems
a.TRANSPonspoj
b.http://www.topcoder.com/stat?c=problem_statement&pm=9975
b.Generatingfunctions
SuggestedReading
1.HerbertWilf'sgeneratingfunctionology/
2.RobertSedgewickandFlajoulet'sCombinatorialanalysis

9.DataStructures.
i.Basic
a.Arrays/Stacks/Queues:
Problems
1.https://www.spoj.pl/problems/STPAR/
2.https://www.spoj.pl/problems/SHOP/
3.https://www.spoj.pl/problems/WATER/
Reading:
1.CLRS:section10.1
2.http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=dataStructures

b.Singly/DoublyLinkedList:
Problems
1.h
ttps://www.spoj.pl/problems/POSTERS/
Reading:CLRS:section10.2,MarkAllenWeiesChapter3
c.HashTables:
Problems
1.https://www.spoj.pl/problems/HASHIT/
2.https://www.spoj.pl/problems/CUCKOO/
Reading:CLRS:Chapter11,MarkAllenWeiesChapter5
d.Circularlinkedlist/queue

Problems
1.https://www.spoj.pl/problems/CTRICK/
e.Binary/naryTrees
Reading
1.CLRS:section10.4
2.CLRS:Chapter12
3.MarkAllenWeiesChapter4
4.h
ttp://www.topcoder.com/tc?module=Static&d1=tutorials&d2=binarySearchRedBlack
f.Heaps
Problems
1.https://www.spoj.pl/problems/PRO/
2.h
ttps://www.spoj.pl/problems/EXPEDI/
Reading:MarkAllenWeiesChapter6
ii.Advanced
a.Trie(Keywordtre
Problems
1.https://www.spoj.pl/problems/MORSE/
2.https://www.spoj.pl/problems/EMOTICON/
Reading
b.Intervaltrees/SegmentTrees
Problems
1.https://www.spoj.pl/problems/ORDERS/
2.https://www.spoj.pl/problems/FREQUENT/
Reading
c.Fenwick(BinaryIndexed)trees
Problems
1.https://www.spoj.pl/problems/MATSUM/
Reading:
http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=binaryIndexedTrees
d.Disjointdatastructures
Problems
1.https://www.spoj.pl/problems/BLINNET/
2.https://www.spoj.pl/problems/CHAIN/
Reading:
1.
http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=disjointDataStructure
2.MarkAllenWeiesChapter8
e.RangeminimumQuery(RMQ)
Problems
1.https://www.spoj.pl/problems/GSS1/
Reading
http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=lowestCommonAncestor
f.Customizedinterval/segmenttrees(AugmentedDS)
Problems
1.https://www.spoj.pl/problems/GSS3/
2.https://www.spoj.pl/problems/RRSCHED/
Reading:CLRS:Chapter14(augmentedDS)
g.AVLTrees
Problems
1.
https://www.spoj.pl/problems/ORDERS/
Reading

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

iv.Exercices
1.https://www.spoj.pl/problems/LAZYPROG
/(Hint:Heaps)t
2.https://www.spoj.pl/problems/HELPR2D2/
(Hint:IntervalTrees)
3.https://www.spoj.pl/problems/SAM/
(Hint:Heaps)
4.https://www.spoj.pl/problems/PRHYME/
(Hint:Trie)
5.https://www.spoj.pl/problems/HEAPULM/
(Hint:IntervalTrees)
6.https://www.spoj.pl/problems/CORNET/
(Hint:Disjoint)
7.https://www.spoj.pl/problems/EXPAND/
8.https://www.spoj.pl/problems/WPUZZLES/
9.https://www.spoj.pl/problems/LIS2/

10. SearchTechniques/Bruteforcewritingtechniques/Randomizedalgorithms.
a.Backtracking[Beginner].
problems>
1.Nqueensproblems
2.KnightsTour

3.SudokuProblem
4.TilingProblem.
5.15puzzle.
b.DancingLinksandAlgorithmXgivenbyKnuth[Advanced]
problemsPRLGAME,SUDOKU,NQUEENonSPOJ
Suggestedreading
1.http://wwwcsfaculty.stanford.edu/~uno/papers/dancingcolor.ps.gz
c.BinarySearch[Beginner].
problemsAGGRCOWonSPOJ.Referthetutorialformoreproblems.
findingallrealrootsofapolynomialusingbinarysearch.[intermediate].
SuggestedReading
1.http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=binarySearch
d.TernarySearch[Intermediate].
problems
1.http://www.spoj.pl/problems/KPPOLY/
2.http://www.codechef.com/DEC09/problems/K1/
3.http://www.topcoder.com/stat?c=problem_statement&pm=4705&rd=7993
4.http://www.topcoder.com/stat?c=problem_statement&pm=7741&rd=10671
5.http://www.topcoder.com/stat?c=problem_statement&pm=6464&rd=9994
6.http://www.topcoder.com/stat?c=problem_statement&pm=3501&rd=6529
7.http://www.topcoder.com/stat?c=problem_statement&pm=4567&rd=6539
e.Meetinthemiddle[Intermediate].
problems
1.http://www.spoj.pl/problems/MAXISET/
2.HillClimbing[Advanced].
f.RegularIterationtoreachafixedpoint[Advanced].
NewtonRaphsonmethodtofindrootofamathematicalfunction.
Iterationstosolvelinearnonhomogeneoussystemofequations.
Generalprogrammingissuesincontests
>
g.ArithmeticPrecision[Beginner].
SuggestedReading
1.http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=integersReals
h.Representingsetswithbitmasksandmanipulatingbitmasks[Beginner].
SuggestedReading
1.http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=bitManipulation
problemsrefertothetutoriallinkinSuggestedreadingsection.

You might also like