Elements of the Contest
The Computer Science contest challenges students to study a broad range of areas in computer science and has both an individual and a team component. Competition consists of a 45-minute written exam for both components, along with a two-hour programming contest for teams.
At all levels of competition, individual places are determined solely by written exam scores. All contestants compete for individual honors at all levels of competition. Individuals placing first, second and third advance to the next level. For the team component, the team’s top three scores on the written exam are added to its score in the programming session to produce an overall team score. First-place teams advance to the next level of competition.
Computer Science Overview Video
In philosophical terms, the UIL Computer Science Contest is a competition that challenges students to apply programming concepts and skills, as well as their knowledge of the designated programming language. The contest is also an opportunity for students to expand their knowledge of computer science beyond the classroom and to foster their interest in the field.
The contest was established in the 1990-91 school year with several goals in mind. Among them were the goals of further strengthening the UIL math and science program with a new technological component, and to support Texas public schools in meeting the growing demand for computer education.
The UIL contest was modeled in many ways on the College Board’s Advanced Placement curriculum for computer science, and the foundations of the contest can still be found there. For the first eight years of its existence, Pascal was the designated programming language for the contest. Beginning with the 1998-99 school year, the AP curriculum moved to C++, and UIL Computer Science did likewise. Finally, beginning in the 2003-04 school year, the contest moved from C++ to Java. This keeps UIL Computer Science in line not only with the AP curriculum, but also with trends in collegiate computer science curricula and the professional programming community.
Java is the designated programming language for UIL Computer Science.
As with all UIL academic contests, computer science participants must meet general eligibility requirements as defined in the Constitution and Contest Rules.
UIL Computer Science competition begins each year with invitational meets, which are hosted on a voluntary basis by individual schools. The UIL provides contest materials for invitational meets that are scheduled from early January until mid-March. Hosts of invitational meets during this time may elect to use the UIL-provided materials or they may use materials from other sources. Schools that host fall invitationals must find other sources for contest materials.
Computer Science is included with all other UIL academic contests in spring meet competition, which begins with district-level competition during the last two weeks of March. Each school may enter up to four contestants in Computer Science at the district meet. District winners advance to regional meets, and regional winners advance to the state contest. State Meet contestants are eligible to apply for Texas Interscholastic League Foundation scholarships.
Programming Equipment and Media
Specific procedures for programming will vary by host site. Contact the site’s contest director for questions or clarification.
Each team may bring two program language reference books or textbooks. Books must be published works that are widely available. Books must also be reasonably free of handwritten notes. Each team must bring media for submitting solutions to judges. The most practical and commonly used media are USB flash drives. Any flash drive used for the contest cannot contain any other data - it may contain the problem solution only. Flash drives may be scanned during system check.
Networked programming contests are increasingly common, and the use of this technology is encouraged. A networked format is used at the state contest, many regional sites and some districts.
Each team will also need a computer to work on. Printers are allowed but not necessary, as all solutions will be submitted on disk. Teams may be encouraged to bring their own computers or to use computers provided by the host site. It’s important to determine which is the case well in advance of the contest - most contest sites REQUIRE teams to bring their own computers.
A team may use ONLY ONE computer during the contest - this means one system, one monitor and one keyboard/mouse. Teams using a laptop computer may use an external display and keyboard/mouse, but these may only be used INSTEAD OF, not in addition to, the laptop's built-in devices. A team may also bring a backup computer to use in case of equipment failure. Only compiler and necessary system software should be installed on the team’s computer. A compiler’s built-in libraries and help functions may be used during the contest, but previously written programs MAY NOT be used and must be removed from the computer prior to competition. A computer's built-in calculation functions may be used during the contest. External calculators may NOT be used.
The two-hour programming session consists of 12 problems of varying degrees of difficulty. Teams will need to arrive early to allow time to set up equipment. Prior to the beginning of the contest, teams will work a simple "dry run" problem that will help familiarize participants with contest procedures.
Teams submit solutions as they finish them. Incorrect solutions will be returned by the judges with a brief notation that may help point contestants in the direction of why the solution was incorrect. Teams may choose to rework the solution and resubmit it for additional consideration. Contestants also have the opportunity to request clarification from the judges on particular problems. Contest standings may be posted periodically during competition at the contest director’s discretion.
UIL Computer Science can be a challenging, educational and fun experience for students and teachers alike. Contestants have the opportunity to apply what they’ve learned in the classroom and to build on that knowledge through contest preparation and competition, including the unique experience of the hands-on contest at the regional and state meets.
State Contest Director
Resources and Practice Materials
- UIL CS Resource Page
(note to contest directors: the resource page includes PC^2 information)
- UIL Bytes is a series of instructive videos on topics in UIL Computer Science.
- Purchase UIL study packet(s)
Java Version and Topics
- Java Platform Standard Edition Version 17 will be used in 2022-2023
- Current Contest Topic List
- Guide to Lambda Expressions
- Boolean Identities List
- Digital Symbols Guide
- Polish Notation Examples
- Class Reference Sheet
(class reference is included with every written test)