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

Programming Camp Syl Lab Us

This document provides a list of topics for programming competitions organized into the following categories: 1. Basic geometry and computational geometry algorithms 2. String algorithms like Knuth-Morris-Pratt and suffix arrays 3. Basic graph algorithms like breadth-first search, depth-first search, and minimum spanning trees 4. More advanced topics in graphs like flows and matchings 5. Dynamic programming problems and techniques 6. Greedy algorithms 7. Number theory concepts and algorithms like modular arithmetic, primality testing, and GCD For each topic, it provides suggestions for further reading and lists relevant problems from sources like SPOJ and Topcoder.

Uploaded by

Tanay Abhra
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
69 views

Programming Camp Syl Lab Us

This document provides a list of topics for programming competitions organized into the following categories: 1. Basic geometry and computational geometry algorithms 2. String algorithms like Knuth-Morris-Pratt and suffix arrays 3. Basic graph algorithms like breadth-first search, depth-first search, and minimum spanning trees 4. More advanced topics in graphs like flows and matchings 5. Dynamic programming problems and techniques 6. Greedy algorithms 7. Number theory concepts and algorithms like modular arithmetic, primality testing, and GCD For each topic, it provides suggestions for further reading and lists relevant problems from sources like SPOJ and Topcoder.

Uploaded by

Tanay Abhra
Copyright
© © All Rights Reserved
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.

You might also like