310 likes | 498 Views
HKOI 2004. Briefing for Finalists. Today ’ s Schedule. HKOI Background & Goals About the Final Event Q & A Session Useful Techniques & Open Problem Q & A Session Things to Note Q & A Session. HKOI Background & Goals. Aims
E N D
HKOI 2004 Briefing for Finalists
Today’s Schedule • HKOI Background & Goals • About the Final Event • Q & A Session • Useful Techniques & Open Problem • Q & A Session • Things to Note • Q & A Session
HKOI Background & Goals • Aims • Select potential candidates for inter- and intra- national competitions
HKOI Background & Goals • Inter- and Intra- national Competitions • AGAMES (SEARCC in the past) • NOI (National Olympiad in Informatics) • IOI (International Olympiad in Informatics)
HKOI Background & Goals • Benefits of Participating in HKOI • Improve your problem solving skill • Prizes • Chances to represent Hong Kong in inter- and intra- national competitions • Fun with programming and making new friends
About the Final Event • Number of Questions: 5 • 100-mark Question x 4 = 400 marks • 50-mark Question x 1 = 50 marks • Total 450 marks • Duration: 3 hours
About the Final Event • Equipment • Desktop computer (with similar hardware & software configurations) • NO other electronic device is allowed • Your own stationery
About the Final Event • Equipment (Desktop Computer) • Running Windows • You can use ANY software provided • You are NOT allowed to install any software • All temporary files should be put in C:\HKOI
About the Final Event • Programming Languages • PASCAL, C or C++ • Programming Environment/Tools • Turbo PASCAL 7.0 (TP 7.0) • Turbo PASCAL for Windows 1.5 (TPW 1.5) • GNU GCC 3.x (MinGW version) • Format Checkers
About the Final Event • Solution Submission • 2 diskettes will be given • Save SOURCES and EXECUTABLES on BOTH diskettes • Save under the root directory (A:\) of the diskettes
About the Final Event • Judging • One of the 2 diskettes will be chosen randomly • ONLY RESULTS of the executables will be marked • 5-30 test cases for each question • Different test cases may carry different marks • Scores will be given for each “correct test case”
About the Final Event • Definition of “Correct Test Case” • EXACT Output Format • Doing less gets NO marks • e.g. Missing separator • Doing more gets NO marks • e.g. ANY Screen Output, ANY trailing spaces • Correct Answer
About the Final Event • Ranking • ONLY results in the Final Event will be counted • About top 30 candidates from each group will be chosen as potential trainees
About the Final Event • Q & A in the Final Event • Normally we will answer YES, NO or NO COMMENT only • Both questions and answers will be announced to all candidates
About the Final Event • Q & A Session
Useful Techniques & Open Problem • File I/O in PASCAL • Text • Assign • Reset • Rewrite • Read/Readln • Write/Writeln • Close
Useful Techniques & Open Problem • File I/O in C • FILE* • fopen • fscanf • fprintf • fclose
Useful Techniques & Open Problem • File I/O in C++ • ifstream • ofstream • ifstream::operator >> • ofstream::operator << • endl
Useful Techniques & Open Problem • Open Question • Errors scoring zero marks • Trailing Space(s) • Unclosed File • Outputting to Screen • Reading from Keyboard • Reading from Files not in Current Directory • Non-silent Executable • Extra Line(s) • Nonzero return value
Useful Techniques & Open Problem • Open Question • Errors scoring some marks • Incomplete Solution
Useful Techniques & Open Problem • Some Simple Algorithms/Skills • Data Processing • Mainly in Junior • Basic in Senior • Simple Mathematics
Useful Techniques & Open Problem • Searching • Linear Search • Breadth First Search • Depth First Search
Useful Techniques & Open Problem • Optimization • Exhaustion • Brute force, search all cases and compare • Dynamic Programming
Useful Techniques & Open Problem • Q & A Session
Things to Note • Before the Competition • Well Prepared • Open question • File I/O in PASCAL, C or C++ • Basic algorithms
Things to Note • During the Competition • Listen and follow the instructions
Things to Note • At the Beginning • Check the equipment carefully • e.g. diskettes, temporary directory • Check the programming environment carefully • e.g. compiling method, output path of executable • Read ALL problem descriptions • Do the easiest one first • Raise questions
Things to Note • In the Middle • For Easy Problems • Make sure your program works for all input • For Hard Problems • Do as much as you can • There will be a wide range of difficulty among test cases • Scores will be given for each “correct test case”
Things to Note • In the Middle • Don’t do more • No need to validate input • No output to screen • No extra output, etc • Don’t do less • NO partial score for test cases • Save your programs frequently
Things to Note • Near the End • No need to clean up the temporary directory • Remember to store the SOURCES and EXECUTABLES on BOTH diskettes • Check the filenames • Sources • Executables • Input & Output Files
Q & A Session • Reference: • Software Competition Reference Materials • http://www.hkace.org.hk/hkoi/hkoi_ref.htm • Open Question • http://www.hkoi.org.hk/ • Un-official Newsgroup • news://hkoi.com/hkoi