Украинские Олимпиады
Украинские Олимпиады по Информатике
по Информатике

Соревнования

Информация
Добро пожаловать
Гостевая книга
Обратная связь
О сайте

ACM-олимпиада
Новости
Правила
Задачи
Сдать задачу
Таблица результатов

IOI-олимпиада
Новости
Правила
Последние задачи
Последние результаты
Архив

"Трудно-решаемая" задача
Новости
Правила
Последняя задача
Последние результаты
Архив

Логические игры
Новости
Правила
Виды игр
Последний турнир
Архив

Викторина
Новости
Правила
Последняя викторина
Архив

 
 
ACM-олимпиада

Правила
 

1. Олимпиада по этим правилам проводится в течении всего времени существования сайта.

2. Имеется определенный набор задач, предлагаемых участникам. Этот набор регулярно пополняется.

3. Каждая задача "стоит" 1 балл. Решение задачи защитывается тогда, когда оно "пройдет" все тесты. (Положения "прохождения" тестов см. в правилах проведения IOI олимпиады).

4. Участник может отсылать каждую задачу сколько угодно раз.

5. Место в олимпиаде определяется:

  • По количеству решенных задач.
  • Если у нескольких участников количество решеных задач равное, то они ранжируются обратнопропорционально количеству незащитаных решений

6. Программа участника должна считывать данные со стандартного входа(клавиатура) и выдавать результаты на стандартный выход (экран), если другое не оговорено в условии задачи.

Пример задачи и ее решение на Паскале:
Условие:

На вход вашей программы подается последовательность целых чисел, каждое из которых не больше чем 2000. Ваша задача посчитать сумму чисел этой последовательности. Известно, что она не превышает 100 000 000.

Решение:

program First;
var
  x : integer;
  Sum : longint;
begin
  Sum:=0;
  while not eof(input) do 
  {пока не конец входа}
  begin
    ReadLn(X); 
    {оператор идентичен readln(input, x);}
    Sum:=Sum+x;
  end;
  WriteLn(Sum); 
  {оператор идентичен writeln(output, Sum);}
end.

Работа со стандартным вводом очень напоминает работу с файлами, в которой входной файл имеет имя input, а выходной output.

Опишем теперь возможные способы проверки этой задачи. Допустим, запускаемый файл называется first.exe
1) Мы можем осуществлять ввод данных с клавиатуры, тогда Запускаем first.exe. Программа ожидает ввода с клавиатуры. Вводим последовательность

   
  2
  4
  -1
  3
  45
 

Для того, чтобы закончить ввод нужно нажать клавиши Ctrl-Z. Наша программа воспримет это как конец входа: eof(input) станет равен TRUE, и, соответственно, мы выйдем из цикла и выдадем ответ

  
  53

2) Мы можем перенаправить стандартный ввод и вывод в файлы. Тогда программа будет запускаться с такими параметрами:

   first.exe <input.txt >output.txt
где файл input.txt содержит тестовую последовательность чисел, а в файле output.txt мы ожидаем увидеть ответ на данный тест.
input.txt            output.txt
------------       -------------
2          |       |53         |
4          |       -------------
-1         |
3          |
45         |
------------

 

 

Сборник

Олимпиады
Международные
Всесоюзные
Всеукраинские (IV этап)
Разные...

Всеукраинские олимпиады
1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002

Отборочные сборы
1992 1993 1994 1996 1997 1998 1999 2000 2001 2002

Международные олимпиады
1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002

Всесоюзные олимпиады
1989 1990 1991 1992

Информация
Список ссылок
Литература
Статьи
Рассылки
Интервью

© Разработано рабочей группой UOI 1998-2002 гг.