ACM ICPC Training Nattee Niparnan Material Download www

  • Slides: 18
Download presentation
ACM ICPC Training Nattee Niparnan

ACM ICPC Training Nattee Niparnan

Material Download www. nattee. net/acm 2016

Material Download www. nattee. net/acm 2016

Why? • To have fun! • To improve our ability!

Why? • To have fun! • To improve our ability!

What is ACM ICPC? • Competitive Programming • Competitive sport element

What is ACM ICPC? • Competitive Programming • Competitive sport element

How? • Practice Make Perfect • Set up reasonable goal • • All Newbie

How? • Practice Make Perfect • Set up reasonable goal • • All Newbie Junior Veteran BE BETTER at Problem Solving solve at least 1 problems in the contest Reach the national round Win Regional, World Final

Resource

Resource

Books : [Data Structure / Algorithm Book] • Data Structures and Algorithm Analysis in

Books : [Data Structure / Algorithm Book] • Data Structures and Algorithm Analysis in Java, Mark A Weiss, Addison Wesley, 2007 • Algorithm Design, Jon Kleinberg, Éva Tardos, Addison Wesley, 2005 • Algorithms, S. Dasgupta, C. Papadimitriou, and U. V. Vazirani, Mc. Graw-Hill, 2007 • Introduction to Algorithms 3 rd edition, T. Cormen, C. Leiserson, R. Rivest, C. Stein, MIT Press, 2009 • การวเคราะหและออกแบบอลกอรทม , สมชาย ประสทธจตระกล , NECTEC, . 2544

Books : Competitive Programming • Programming Challenges • Steven Skiena • Miguel Revilla

Books : Competitive Programming • Programming Challenges • Steven Skiena • Miguel Revilla

Books : Competitive Programming • Competitive Programming 3: The New Lower Bound of Programming

Books : Competitive Programming • Competitive Programming 3: The New Lower Bound of Programming Contests • Steven/Felix Halim

Training : CP Training • Sphere Online Judge • โจทยงายเยอะ • http: //www. spoj.

Training : CP Training • Sphere Online Judge • โจทยงายเยอะ • http: //www. spoj. com/problems/classical/sort=6 • Code. Force มแขงบอย • www. codeforce. com , เฉลยด • At. Coder • มแขงระดบเรมตนเยอะ • atcoder. jp • Google Code Jam • โจทยด • https: //code. google. com/codejam/contests. html • Code. Chef โจทยงาย • www. codechef. com

Training : CP Training (Thai) • programming. in. th • อยมานาน community ใหญ •

Training : CP Training (Thai) • programming. in. th • อยมานาน community ใหญ • www. programming. in. th • Code Cube • นองใหมไฟแรง • www. codecube. in. th • Thailand Programming Contest • นองไมใหมไฟไมคอยแรง (คนทำงานยง • contest. thailandoi. org (

Community • ไทย • www. facebook. com/pages/Code. Cube/10555981845119 54 • www. facebook. com/eattheseprogrammingtasks •

Community • ไทย • www. facebook. com/pages/Code. Cube/10555981845119 54 • www. facebook. com/eattheseprogrammingtasks • นาอาน • www. quora. com/Competitive-Programming • . contest-wiki. csc. kth. se/index. php/How_to_get_better

Quora • https: //www. quora. com/What-all-basic-datastructures-and-algorithms-should-one-learnbefore-starting-competitive-programming • https: //www. quora. com/How-can-I-improve-mycompetitive-programming-skills • https: //www.

Quora • https: //www. quora. com/What-all-basic-datastructures-and-algorithms-should-one-learnbefore-starting-competitive-programming • https: //www. quora. com/How-can-I-improve-mycompetitive-programming-skills • https: //www. quora. com/How-do-I-become-acompetitive-programmer • https: //www. quora. com/What-is-it-like-to-win-amedal-at-ACM-ICPC-World-Finals

Topics

Topics

Data Structure • ใช libraries ใหคลอง (STL, Collections Framework) • เขาใจประสทธภาพของโครงสรางขอมลตาง ๆ • Hash,

Data Structure • ใช libraries ใหคลอง (STL, Collections Framework) • เขาใจประสทธภาพของโครงสรางขอมลตาง ๆ • Hash, Map, priority queue, stack/queue/list/vector • รวธการเรยงมลคาแบบ custom • จดเกบ Graph เปน • Adjacency list, Adjacency Matrix • Non-standard data structure • Segment Tree, Fenwick Tree, Disjoint Set • K-D Tree, Range Tree • Tries, Suffix Tree

Basic Algorithm • Topological Sort • Sorting • Network Flow • Search • Computational

Basic Algorithm • Topological Sort • Sorting • Network Flow • Search • Computational • Greedy Geometry • Divide-and-Conquer • Math • Dynamic Programming • Modular Arithmetic • optimization • Graph Algorithm • Shortest Path • Minimal Spanning Tree • Number Theory • Series, sequence