FSC Programming Team

Welcome!

Welcome to repository for the Florida Southern College Programming Team! The team meets weekly for a simulated contest, wherein we solve several problems and discuss their solutions. The team then participates in the annual Association for Computing Machinery's International Collegiate programming Contest.

Battle of the Brains

The ACM ICPC contest pits students against eight or more complex, real-world problems, with a challenging five-hour deadline. Huddled around a single computer, competitors race against the clock in a battle of logic, strategy, and mental endurance.

You must quickly rank the difficulty of the problems, deduce the requirements, design test beds, and build software systems that solve the problems under the intense scrutiny of expert judges. For a well-trained student, some of the problems require precision only. Others require a knowledge and understanding of advanced algorithms. Still others are simply too hard to solve – except, of course, for the world’s brightest problem-solvers. The student that solves the most problems with the least penalty points (see rules) is declared the winner.

Introduction

Click here to read more about the team, why you may be interested, and more details about the ACM ICPC contest.

How to prepare?

Just like in any other contest, success comes by hard work and practice. So how can you prepare? Practice! And then? Practice more! Don't forget: have FUN!

Here are some websites that have competition style programs, and they allow you to submit the programs online for immediate judging:

We mainly use vJudge, as it is is a platform that pulls contest problems from a variety of external sources, including several of the other sites listed above. You will want to create an account at each of these websites. And a suggestion: register with the SAME username at each website, as this will allow you to easily follow your success at each site.

Visit these sites. Practice the problems. And do it for fun! If you are participating, then you already know programming is problem solving, and problem solving is fun! So start coding, start solving problems, and start having fun.

Introductory Programming Contest

So are you ready to give it a shot? Click here for our introductory contest. And don't worry...all the problems are easy; we're not even using loops at this point. The sole purpose of this contest is to "get your feet wet" and become comfortable with the user interface and expectations of the submission systems at these websites.

Some helpful hints:

  • When using Java, always name your class as "Main" with a capital M.
  • You can use any Editor or IDE you prefer.
  • VS Code is super lightweight and perfectly suited for these problems.
  • While a full-fledged IDE may be overkill, some prefer this route. If you use NetBeans or IntelliJ, make sure to avoid the use of packages.
  • Therefore, when making new projects in NetBeans, for example, a suggestion would be for you to name your project by referencing the contest Website and the problem ID number. For example, the first problem in the contest above comes from the website URI, and the problem ID number is 1001. So in NetBeans, the suggestion is to name this project as "URI_1001". Then, at that same window in NetBeans, you will choose for NetBeans to create a main class for you, AND you will should type "Main" (with a capital M) as the name of that class. Make sure you have nothing to the left of the word Main (no periods and no other characthers, as this would create a package...which we do not want).
  • The judging software will run your program and compare your exact result with the correct result. If your result matches 100%, character for character, space for space, then you will get an answer of "Accepted", which means your solution was accepted by the judge.
  • The takeaway: be careful. If the sample output shows two spaces, make sure you put two spaces (and not one). If the output shows lowercase, then make sure you type in lowercase (for example). Your output must match exactly to the judging output.
  • You will usually only be reading from the standard input (System.in). Do not worry about files. So just make a Scanner and read using the built-in Java functionality of the Scanner class.

Try an "Hour of Code"

Code.org

by Code.org

kindness

Use your voice for kindness,
your ears for compassion,
your hands for charity,
your mind for truth,
and your heart for love.

Coding / Programming Jokes

Click here to enjoy