What are the best resources for preparing for the BAPC competition?

  • Thread starter Thread starter Max.Planck
  • Start date Start date
Click For Summary

Discussion Overview

The discussion revolves around preparing for the Benelux Algorithm Programming Contest (BAPC), focusing on practice resources, programming languages, and strategies for effective competition preparation.

Discussion Character

  • Exploratory
  • Technical explanation
  • Debate/contested

Main Points Raised

  • Max.Planck seeks advice on the best ways to practice for the BAPC competition, referencing example problems from a previous contest.
  • DaveE criticizes the clarity and assumptions in the example problems, suggesting that they may not be suitable for a multi-university contest.
  • Max.Planck inquires about the most suitable programming language for the competition, considering C++, Java, and Pascal.
  • DaveE suggests that familiarity with a language is crucial, noting that Java may be more competitive in the marketplace, while C++ is also a strong choice. He advises against using Pascal unless already familiar with it.
  • A participant mentions past experience with C++ in the Dutch Informatics Olympiad, expressing concern about development speed compared to scripting languages like Python.
  • Another participant notes that scripting languages can significantly reduce development time due to their flexibility and ease of use, especially for tasks like file handling.
  • Max.Planck reflects on a previous competition experience, indicating that switching to C++ from Python was a mistake due to time lost on input formatting.
  • A participant asks for recommendations on good books for C++ or algorithm programming.

Areas of Agreement / Disagreement

Participants express differing opinions on the suitability of programming languages and the clarity of competition problems. There is no consensus on the best language or resources for preparation, and the discussion remains unresolved regarding the optimal approach to practice.

Contextual Notes

Participants highlight the challenges of input handling and the varying development speeds of different programming languages, but do not resolve the specifics of these issues.

Max.Planck
Messages
128
Reaction score
0
Hello,

Next year I want to participate in the BAPC (Benelux algorithm Programming Contest). This contest will he held in Leiden and students of all Universities in the BeNeLux are allowed to participate. Now, I would like to know what is the best way to practise for such a competition.

Here are some example problems:
http://www.bapc.eu/2009-problems.pdf

Thanks!

Max.Planck
 
Last edited by a moderator:
Technology news on Phys.org


Max.Planck said:
http://www.bapc.eu/2009-problems.pdf

Wow. Those are HORRIBLY written. I only read to the 4th problem, but there are so many assumptions, I'm just amazed. If this were some sort of brain teaser problem, then... fine, I guess. Or maybe if it were written by one teacher for their class (where the class could ask lots of more specific questions). But these are programming requirements for a multi-university contest? WTF?

If you want more practice problems, try Project Euler. They start off not too bad, but employ some interesting strategies as you continue.

DaveE
 
Last edited by a moderator:


Thanks for your post. Which language do you recommend for the competition? I can choose from C++ / Java / Pascal.

Thanks.

Max.Planck
 


Whatever you're comfortable with, really. In my experience, Java is probably the most competitive one to learn and use in the marketplace, although nobody could fault you for using C/C++ either. Pascal? That's not used nearly as much these days, so I'd vote not to choose Pascal, unless you're already familiar with it or have a particular field in mind where Pascal is preferred.

DaveE
 


Yeah, I programmed in C++ before in the Dutch Informatics Olympiad. However, I got beat by scripting languages (Python etc) and I wonder which of the two (Java or C++) is faster in developing time. If Java is not significantly faster in developing time I'm going to stick with C++.
 


I haven't programmed enough with Java and C++ recently to know which one would go more quickly, other than to say that if you're more familiar with one language, you'll be faster at it.

Of course, nothing compares in terms of development speed to scripting languages. They're very powerful, often don't make you constantly switch data types, and don't need to be compiled. But since it would seem that you don't have any scripting language options, it's probably not much of a difference between the languages you have at your disposal.

DaveE
 


scripting languages will win fast points because you spend less time writing/re-writing how to do simple things like open and parse an input file.. (sure it's easy in C++, but how *fast* can you do it ? With untyped scripting languages, even faster..)
 


Yeah I definitely lost a lot of time during the Informatics Olympiad getting the input in the right format: Using getline to read every line and put it all lines into one string, then getting specific spieces of the string converted to a float using the atof() function.
It was the first time I participated and it was especially a disappointment because at first I wanted to program in Python (which I already had learned), but I went out and learned C++ for the competition (which turned out to be a mistake).
 


Does anybody know any good books for C++ or algorithm programming?
 

Similar threads

  • · Replies 7 ·
Replies
7
Views
4K
  • · Replies 22 ·
Replies
22
Views
3K
  • · Replies 9 ·
Replies
9
Views
3K
  • · Replies 38 ·
2
Replies
38
Views
12K
Replies
2
Views
3K
Replies
15
Views
3K
Replies
29
Views
6K
  • · Replies 76 ·
3
Replies
76
Views
9K
  • · Replies 3 ·
Replies
3
Views
7K
  • · Replies 10 ·
Replies
10
Views
7K