20200809

@liwei

Plan

Learn how to do competative programming. Starting Competitive Programming - Steps and Mistakes

Notes

  1. Be good in -English -Math, mainly in algebra and combinatorics (no more geometry, trigonometry or calculus). Learn also basic modular arithmetic and number theory. Graph theory is for the later stages (not for starters). Tip: for practicing the math you can go to the 'Math' section on 'hackerrank.com'. He explains what you can practice at 01:28 -Touch typing (typing without looking to the keyboard). Getting to 50-60 WPM (words per minute) would be nice. Tip: for practicing touch typing you can go to 'keybr.com'.

  2. Learn a programming language (C++ or the language you already know). Scratch for beginners who are really scared of coding. He recommends learning C++ (there is a link to a video in the description of a C++ tutorial, he recommends the first 5-6 hours of that video). Tip: for practicing go to 'hackerrank.com'.

  3. Learn basic algorithms and data structures. Tip: in the description there is a hand book about it. There is also the algorithm page on 'geeksforgeeks.com'. There is also an 'algorithm section' on 'hackerrank.com'. You can practice problems like 'linked lists' from 'A20J Ladders'. There is another link in the discription to a spreadsheet. You can also practice problems, he explains it at 05:30.

  4. Improving through constant practice.

  5. is a joke he made (Have a YouTube Channel to flex about your skills).

Mistakes:

  1. Relying on College Courses
  2. Reading too much (reading is not problem solving)
  3. Learning too advanced techniques
  4. Comparing yourself to others (I was doing it in the past, so don't do it guys. Also be patient, time and practice will pay off)

More

关于 acm 中经常出现的一对函数 std::ios::sync_with_stdio(false) 和 cin::tie(0)。这两个函数的作用是加快 c++ 的输入和输出。iostream 默认需要与 stdio 同步,具体操作方式是将要输出输出的字符存到缓冲区。调用 sync_with_stdio(false),则是取消了这个存储到缓冲区的过程。cin::tie(0) 的存在,则是因为 cin 默认和 cout 绑定,所以每次 cin 之前都会有一个 flush 的操作,调用这个函数,则取消了这个绑定关系,绑定关系没有了,自然 flush 操作也没了,自然 cin 也加快了。当然了,这种极致化的操作,可能短时间我还不可能用上吧,笑。