ACM exercises
There are many questions on the Internet, most of which can be evaluated online, so they are called online judge. Except that usaco is prepared for IOI, almost all others are university ACM competitions.
Usaco
Http://ace.delos.com/usacogate
Famous online question bank in the United States, specially prepared for contestants in the informatics Competition
Tju
Http://acm.tongji.edu.cn/
The online question bank of Tongji University, the only Chinese Question Bank, is suitable for noip contestants
Zju
Http://acm.zju.edu.cn/
Online Question Bank of Zhejiang University
Jlu
Http://acm.jlu.edu.cn/
Online Question Bank of Jilin University)
PKU
Http://acm.pku.edu.cn
Peking University Online Question Bank
Ural
Http://acm.timus.ru
Russian University Online Question Bank
Sgu
Http://acm.sgu.ru/
Russian University of San salatov online question bank
Elj
Http://acm.mipt.ru/judge/bin/problems.pl? Lang = en
Moscow Institute of Physical Technology
Spoj
Https://spoj.sphere.pl/
Gdansk Polytechnic University, Poland
Ultraviolet
Http://acm.uva.es/
Spanish Universidad de Valladolid online question
ACM contact suggestions
One expert gave me the following suggestions:
Generally, you do not need to debug programs with less than 50 lines, or debug programs with less than 100 lines within two minutes. ACM is mainly used for algorithm testing.
The main time is spent on thinking about algorithms, not writing programs and debugging.
Below is a plan for you to practice:
Stage 1:
Practice common classic algorithms. Each of the following algorithms gives me 10 to 20 times, while streamlining the code,
Because it is too common, you don't have to think about it when writing. You can even turn off the monitor within 10-15 minutes.
Come out.
1. Transient (Floyd, dijstra, bellmanford)
2. minimal spanning tree (write a prim first, and kruscal should use and query the set, which is hard to write)
3. Large numbers (High Precision) addition, subtraction, multiplication, and Division
4. Binary Search. (the code can be less than five lines)
5. Perform cross multiplication, determine the intersection of line segments, and then write a convex hull.
6. BFs, DFS, and skilled hash tables (be familiar, flexible, and concise)
7. mathematical formulas include: Moving and Division (within two rows), line segment intersection, and multi-angle area.
8. There are many tips for calling the system qsort.
9. Conversion between any binary systems
Stage 2:
Exercise is a bit more complex, but it is also a common algorithm.
For example:
1. Bipartite Graph Matching (Hungary), minimum path Overwrite
2. network flow, minimum charge flow.
3. Line Segment tree.
4. Check the set.
5. Familiar with various typical dynamic planning models: LCs, longest incrementing substrings, triangle partitioning, and memory DP
6. classification algorithms. Game tree and binary method.
7. The largest group and the largest independent set.
8. points are located within the polygon.
9. Differential constraint system.
10. Bidirectional breadth search, A * algorithm, minimum dissipation first.
Stage 3:
The first two stages are the foundation, and the third stage is the exercise. In the competition, you can quickly create models and think about new algorithms.
. This requires more comprehensive questions at ordinary times.
1. Take a look at the papers on oibh (about a few hundred articles, I only read a little bit, huh, huh ).
2. Scan the problems on zoj at ordinary times. Don't always do things you don't need to think about.
Do:-P)
3. participate in online competitions, feel the competition atmosphere, and evaluate your strength.
4. If you don't need a question, even if you ask someone, you can use a better algorithm.
5. Remember the questions you have done :-)