Download presentation
Presentation is loading. Please wait.
Published byLesley Hubbard Modified over 9 years ago
1
Reactive and Output-Only HKOI Training Team 2006 Liu Chi Man (cx) 11 Feb 2006
2
2 HKOI Training Team 2006 Outline Reactive tasks (a.k.a. interactive tasks) Output-only tasks (a.k.a. open test data tasks) Scoring methods
3
3 HKOI Training Team 2006 Traditional tasks Read input, write output Static input Problem: Add Two Numbers Input: Two integers per line Output: For each input line, add the two integers and output the sum on one line
4
4 HKOI Training Team 2006 Add Two Numbers Algorithm One while not end of input do read integers from input write sum to output Algorithm Two read all integers into an array compute all sums write all sums to output
5
5 HKOI Training Team 2006 Interactivity Problem: Guess The Number My lucky number is an integer between 1 and N Guess until you get the correct answer After each guess I will tell you whether your guess is too big or too small or correct
6
6 HKOI Training Team 2006 Interaction via provided libraries Function calls Examples: N := GetN(); / N = GetN(); MakeGuess(7); Task description contains sufficient instructions Using a library Pascal: uses mylib; C/C++: #include "mylib.h"
7
7 HKOI Training Team 2006 Interaction via standard I/O I/O method same as traditional tasks IMPORTANT Make sure you read and write in the correct order specified in the task description
8
8 HKOI Training Team 2006 Nature of reactive tasks Black-box testing Two-person games Updates and queries
9
9 HKOI Training Team 2006 Black-box testing Use queries to reveal hidden information Examples include Guess The Number Mastermind
10
10 HKOI Training Team 2006 Two-person games Write a program to play a game against the judging program Examples include Tic-tac-toe Nim (match-picking)
11
11 HKOI Training Team 2006 Updates and queries Processing of a set of data “Update” command Modify the set of data “Query” command Ask for some information about the data A Query must be answered before next command is revealed
12
12 HKOI Training Team 2006 Strategies Black-box testing Bisection, trisection, etc. Two-person games Minimax method (dynamic programming speed up) Updates and queries More advanced data structures, e.g. disjoint sets
13
13 HKOI Training Team 2006 Output-only tasks All input test cases are given to you You are required to submit corresponding output files for these inputs No source code, executable required Usually optimal (best) answers are very difficult to obtain Partial scoring
14
14 HKOI Training Team 2006 Nature of output-only tasks “Hard” problems Optimal solutions not likely to be found within minutes For the precise definition of “hardness”, look forward to “[Talk] Introduction to Complexity Theory” “Semi-manual” problems Some of the test cases designed for you to solve by hand or wicked methods
15
15 HKOI Training Team 2006 Strategies Manual inspection of all test cases Make sure you don’t miss those easy inputs Go for suboptimal solutions Greedy, heuristics, random, etc. Fully utilize your resources Hours of CPU time Plentiful memory Other tools (calc, sort, factor, bc, graphics software, games, etc.)
16
16 HKOI Training Team 2006 Effort vs. Score Effort Score
17
17 HKOI Training Team 2006 1 Task = 10 Tasks! Sometimes test cases are designed so that each one has some special properties Different properties may lead to different solving methods 1 task, T programs T is the number of test cases
18
18 HKOI Training Team 2006 Conclusion 1 to 2 per competition (6 tasks in total) Reactive tasks are more popular than output- only tasks In general, it is easier to score high marks in reactive tasks than output-only tasks
19
19 HKOI Training Team 2006 Frequencies ReactOutputReactOutput IOI’0010NOI’0000 IOI’0131NOI’0100 IOI’0211NOI’0211 IOI’0321NOI’0311 IOI’0400NOI’0411 IOI’0510NOI’0501
20
20 HKOI Training Team 2006 Scoring methods How are marks given for each test case? All-or-nothing Correct – full; incorrect – zero Partial You may get something between full and zero
21
21 HKOI Training Team 2006 Partial scoring Multiple parts Example: If you get the first integer wrong, you get 0%; if you get the first integer correct, you get 30%; if you get both integers correct, you get 100% Suboptimal award Example (maximization): Let A be the optimal answer and B be your answer; your score is (B/A) 100%
22
22 HKOI Training Team 2006 Partial scoring Number of queries (Reactive: black-box testing) Fewer queries, higher score Usually an explicit formula for score calculation is given Some of the variables in the formula may be unknown to you, however “Your answer is compared to our answer” Our refers to the judges
23
23 HKOI Training Team 2006 Relative scoring Your answer is compared to the best answer among all contestants If nobody else attempts that task, you win
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.