misc plat

This commit is contained in:
Benjamin Qi 2020-07-02 13:48:28 -04:00
parent b09628ee96
commit f03c118930
7 changed files with 27 additions and 13 deletions

View file

@ -88,3 +88,5 @@ Although not feasible if you have to write all code from scratch, I find [this t
### Stress Testing
You can use a [simple script](https://github.com/bqi343/USACO/blob/master/Implementations/content/contest/stress.sh) to test two solutions against each other. See Errichto's [video](https://www.youtube.com/watch?v=JXTVOyQpSGM) on testing solutions for more information.
- [Errichto's Blog](https://codeforces.com/blog/entry/64993)

View file

@ -17,6 +17,7 @@ export const metadata = {
new Problem("YS", "Frequency Table of Tree Distance", "frequency_table_of_tree_distance", "Hard", false, ["Centroid", "FFT"], ""),
new Problem("DMOJ", "Bob Equilibrium", "dmopc19c7p6", "Hard", false, ["Centroid"], "tight time limit"),
new Problem("DMOJ", "Time Traveller Imaxblue", "tc19summerh", "Hard", false, ["Centroid"], ""),
new Problem("ojuz", "JOI - Synchronization", "JOI13_synchronization", "Hard", false, ["Centroid", "Small to Large"], "Looks like $O(N \log^3 N)$ is very fast!"),
new Problem("Plat", "At Large", "793", "Very Hard", false, ["Centroid"], "tight time limit"),
]
}

View file

@ -17,13 +17,14 @@ export const metadata = {
new Problem("CSES", "Company Queries II", "1688", "Intro|Easy", false, ["LCA"], "Pure implementation; see Benq's library code, it has a function for LCA. Though this problem can be solved with binary lifting as well, you should do it with HLD to get practice."),
],
general: [
new Problem("Gold", "Milk Visits", "970", "Easy", false, ["HLD"], ""),
new Problem("Gold", "Milk Visits", "970", "Easy", false, ["HLD"], "This has a linear time solution, but it's easier to make modifications to the HLD template."),
new Problem("Gold", "Cow Land", "921", "Easy", false, ["PURS", "HLD"], ""),
new Problem("HR", "Subtrees & Paths", "https://www.hackerrank.com/challenges/subtrees-and-paths", "Intro|Easy", false, ["HLD"], ""),
new Problem("Old Gold", "Grass Planting", "102", "Intro|Easy", false, ["HLD"], ""),
new Problem("Old Gold", "Grass Planting", "102", "Intro|Easy", false, ["HLD", "PURS"], ""),
new Problem("Plat", "Disrupt", "842", "Easy", false, ["HLD"], ""),
new Problem("YS","Vertex Set Path Composite","vertex_set_path_composite", "Intro|Hard", false, ["HLD"], "Function order matters! Maintain two segment trees, one for going up and the other for going down the tree."),
new Problem("CF", "Tree Queries", "contest/1254/problem/D", "Hard", false, ["HLD"], ""),
new Problem("HR", "Subtrees & Paths", "https://www.hackerrank.com/challenges/subtrees-and-paths", "Intro|Easy", false, ["HLD", "RURQ"], "See adamant's blog."),
new Problem("YS","Vertex Set Path Composite","vertex_set_path_composite", "Intro|Normal", false, ["HLD", "SegTree"], "Function order matters! Maintain two segment trees, one for going up and the other for going down the tree."),
new Problem("CF", "Tree Queries", "contest/1254/problem/D", "Hard", false, ["HLD"], "maybe hard to see why this applies here, gives $O(N\log N)$ while most people solved it with some factor of $\sqrt N$"),
new Problem("ojuz", "JOI - Synchronization", "JOI13_synchronization", "Hard", false, ["HLD"], "$O(N\log N)$ :D"),
new Problem("ojuz", "JOI - Cats or Dogs", "JOI18_catdog", "Very Hard", false, ["HLD"], ""),
],
}
@ -42,8 +43,8 @@ export const metadata = {
<resources>
<resource source="CF" title="AI-Cash - HLD Implementation" url="blog/entry/22072" starred />
<resource source="CF" title="adamant - Easiest HLD with subtree queries" url="blog/entry/53170" starred>Not a complete HLD implementation</resource>
<resource source="Benq" title="Complete HLD Implementation" url="https://github.com/bqi343/USACO/blob/master/Implementations/content/graphs%20(12)/Trees%20(10)/HLD%20(10.3).h" starred>Complete HLD implementation following the first two articles (with minor modifications)</resource>
<resource source="CF" title="adamant - Easiest HLD with subtree queries" url="blog/entry/53170" starred>not complete</resource>
<resource source="Benq" title="Complete HLD Implementation" url="https://github.com/bqi343/USACO/blob/master/Implementations/content/graphs%20(12)/Trees%20(10)/HLD%20(10.3).h" starred>complete implementation following the above two articles with minor modifications</resource>
</resources>
## Problems

View file

@ -69,3 +69,5 @@ export const metadata = {
</resources>
<problems-list problems={metadata.problems.cht} />
https://codeforces.com/contest/1083/problem/E

View file

@ -48,4 +48,6 @@ export const metadata = {
## Problems
<problems-list problems={metadata.problems.probs} />
<problems-list problems={metadata.problems.probs} />
https://atcoder.jp/contests/arc066/tasks/arc066_d

View file

@ -34,7 +34,9 @@ export const metadata = {
<resource source="CF" title="tuwuna - Explaining DSU on Trees" url="blog/entry/67696"></resource>
</resources>
## Merging Sets
## Merging Data Structures
Obviously [linked lists](http://www.cplusplus.com/reference/list/list/splice/) can be merged in $O(1)$ time. But what about sets or vectors?
<problems-list problems={metadata.problems.sam} />

View file

@ -31,6 +31,8 @@ export const metadata = {
}
};
## Resources
<resources>
<resource source="CF" title="Suffix Array" url="edu/course/2/lesson/2" starred>Videos & Practice Problems</resource>
<resource source="cp-algo" title="Suffix Array - Definition & Construction" url="suffix-array.html" starred></resource>
@ -41,9 +43,13 @@ export const metadata = {
<problems-list problems={metadata.problems.sample} />
(recommend that you also test against brute force for many small strings)
### Implementations
(impl)
<resources>
<resource source="Benq" title="Suffix Array w/ LCP" url="https://github.com/bqi343/USACO/blob/master/Implementations/content/strings%20(14)/Light/SuffixArray%20(14.4).h">$O(N\log N)$</resource>
</resources>
(recommend that you also test against brute force for many small strings)
## LCP Array
@ -51,8 +57,6 @@ export const metadata = {
Quickly compute longest common prefix of two suffixes.
(impl)
<problems-list problems={metadata.problems.lcp} />
## Inverse Burrows-Wheeler