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

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)
74 views

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
You are on page 1/ 5

ListofTopicsforprogrammingCompetitions

1. BasicGeometry/EuclideanGeometry/CoordfinateGeometry/[3Dvariantsofeverything].
2. ComputationalGeometry.
a. GrahamScanalgorithmforConvexHullO(n*log(n)).
b. Onlineconstructionof3DconvexhullinO(n^2).
c. BentleyOttmannalgorithmtolistallintersectionpointsofnlinesegmentsinO((n+I)*logn).
SuggestedReading
1. http://softsurfer.com/Archive/algorithm_0108/algorithm_0108.htm
d. RotatingCalipersTechnique.
SuggestedReadinghttp://cgm.cs.mcgill.ca/~orm/rotcal.html
ProblemsReferthearticleforalistofproblemswhichcanbesolvedusingRotatingCaliperstechnique.
e. LineSweep/PlaneSweepalgorithms
Area/PerimeterofUnionofRectangles.
Closestpairofpoints.
SuggestedReading
1. http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=lineSweep
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:Algorithmsandapplications.MarkDeBurg.
3. StringAlgorithm.
a. KnuthMorrisPrattalgorithm.
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)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
string.Runtime>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
http://www.algorithmist.com/index.php/Category:String_algorithms
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
http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=graphsDataStrucs1.
Alsorefertothetutorialforproblemsconcerningthesetechniques.
Cormenchapter22to24.
5. Flownetworks/matchingetcetc.[Interdiate/Advanced].
a. MaximumflowusingFordFulkersonMethod.
SuggestedReading
1. http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=maxFlow
problemsTAXI,POTHOLE,IM,QUEST4,MUDDY,EN,CABLETV,STEAD,NETADMIN,COCONUTS,OPTMonSPOJ.
b. MaximumflowusingDinicsAlgorithm.
ProblemsPROFITonspoj.
c. MinimumCostMaximumFlow.
SuccessiveShortestpathalgorithm.
CycleCancellingalgorithm.
SuggestedReading
1. http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=minimumCostFlow1
d. MaximumweightedBipartiteMatching(KuhnMunkrasalgorithm/HungarianMethod)
problemsGREED,SCITIES,TOURSonSPOJ|http://www.topcoder.com/stat?c=problem_statement&pm=8143
e. StoerWagnermincutalgorithm.
f. HopcroftKarpbipartitematchingalgorithm.
problemsANGELSonSPOJ.
g. Maximummatchingingeneralgraph(blossomshrinking)
h. GomoryHuTrees.
i)ProblemsMCQUERYonSpoj.
i. ChinesePostmanProblem.
problemshttp://acm.uva.es/archive/nuevoportal/data/problem.php?p=4039
SuggestedReadinghttp://eie507.eie.polyu.edu.hk/sssubmission/B7a/
j. SuggestedReadingforthefullcategory>
NetworkflowAlgorithmsandApplicationsbyAhuja
Cormenbookchapter25.
6. 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=7849
f. 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
g. 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
h. 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
i. 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
j. SymmetriccharacterizationofDPstate
http://www.topcoder.com/stat?c=problem_statement&pm=8610
k. Agoodcollectionofproblems
http://codeforces.com/blog/entry/325
http://problemclassifier.appspot.com/index.jsp?search=dp&usr=
7. Greedy.
a. SuggestedReading
ChapteronGreedyalgorithmsinCormen.
http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=greedyAlg
b. problemsrefertothetopcodertutorial.
8. NumberTheory.
a. Modulusarithmeticbasicpostulates[Includingmodularlinearequations,ContinuedfractionandPell'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[Simplebookdescribingconceptsindetails]
ConceptsarealsosuperficiallycoveredinChapter31ofIntroductiontoAlgorithmsbyCormen
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=
9. Math(Probability,Counting,GameTheory,GroupTheory,Generatingfunctions,PermutationCycles,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. Topcoderprobabiltytutorialhttp://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,fibonnaccinumbers
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,RepresentingLineartransformationsusingmatrix]
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,GaussJordanElimination]
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,Integerrootsofapolynomial,Allrealroots
ofapolynomial]
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
BernsideLemma,Poliastheorem
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

10.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. https://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. http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=binarySearchRedBlack
f.Heaps
Problems
1. https://www.spoj.pl/problems/PRO/
2. https://www.spoj.pl/problems/EXPEDI/
Reading:MarkAllenWeiesChapter6
ii.Advanced
a. Trie(Keywordtree)
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/
Readinghttp://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/

11.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].
poblemsAGGRCOWonSPOJ.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. http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=2868
f. HillClimbing[Advanced].
g. RegularIterationtoreachafixedpoint[Advanced].
NewtonRaphsonmethodtofindrootofamathematicalfunction.
Iterationstosolvelinearnonhomogeneoussystemofequations.
h. RandomizedAlgorithms[Intermediate]
QuickSort.
12.Generalprogrammingissuesincontests>
a. ArithmeticPrecision[Beginner].
SuggestedReading
1. http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=integersReals
b. Representingsetswithbitmasksandmanipulatingbitmasks[Beginner].
SuggestedReading
1. http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=bitManipulation
problemsrefertothetutoriallinkinSuggestedreadingsection.
reshareno

You might also like